Code23.EventBus.Abstractions 0.3.9

dotnet add package Code23.EventBus.Abstractions --version 0.3.9
NuGet\Install-Package Code23.EventBus.Abstractions -Version 0.3.9
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Code23.EventBus.Abstractions" Version="0.3.9" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Code23.EventBus.Abstractions --version 0.3.9
#r "nuget: Code23.EventBus.Abstractions, 0.3.9"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Code23.EventBus.Abstractions as a Cake Addin
#addin nuget:?package=Code23.EventBus.Abstractions&version=0.3.9

// Install Code23.EventBus.Abstractions as a Cake Tool
#tool nuget:?package=Code23.EventBus.Abstractions&version=0.3.9

Code23.EventBus.Abstractions

Interfaces und Klassen zur Verwendung von Code23.EventBus.

Ableitungen/Implementierungen für Sagas und Handlers

Saga<TState>

Erstellen einer Saga-Klasse mit State.

Sagas besitzen darüber hinaus noch weitere Methoden:

  • RetryLater, um die Message zurückzureihen
  • Publish, um eine andere Message zu senden
  • Compensate, um den Versender zu informieren, dass der Vorgang abgebrochen wurde
  • Log, um einen Log-Eintrag zur Saga zu erstellen
  • MarkAsCompleted, um die Saga zu beenden

IStartedByMessage<TMessage>

Sagas werden über TMessages erzeugt. Beim Erhalt der Message wird HandleAsync aufgerufen.

IHandleMessage<TMessage>

Bestehende Sagas (oder keine Saga-Klassen) rufen beim Erhalt dieser Message die HandleAync-Methode auf.

ICompensateMessage<TMessage>

Tritt bei der Bearbeitung einer Message ein Fehler auf, so wird eine Compensate-Message an den Sender der Nachricht geschickt. Ist dort ICompensateMessage<TMessage> implementiert, wird die Methode CompensateAysnc aufgerufen.

Versand von Messages

Der Versand von neuen Message wird mit IMessageService.PublishAsync gemacht. Beispiel:

messageService.PublishAsync(
  new OrderPlaced()
  correlationId: "69C82445-C845-4F94-BE10-BC20F1872DBA", //Correlation-ID => eindeutig in Kombation mit Saga-Type (wird intern für die Suche nach aktiven States verwendet).
);
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.0

    • No dependencies.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Code23.EventBus.Abstractions:

Package Downloads
Code23.EventBus.Persistence.MsSql

Code23.EventBus.Persistence.MsSql

Code23.EventBus.Transport.RabbitMQ

Code23.EventBus.Transport.RabbitMQ

Code23.EventBus.Core

Code23.EventBus.Core

Code23.EventBus.Transport.AzureServiceBus

Code23.EventBus.Transport.AzureServiceBus

Code23.EventBus.Persistence.AzureTableStorage

Code23.EventBus.Persistence.AzureTableStorage

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.3.9 343 6/30/2023
0.3.8 421 3/10/2023
0.3.7 432 1/27/2023