Trellis.Messaging.AzureServiceBus
3.0.0-alpha.505
dotnet add package Trellis.Messaging.AzureServiceBus --version 3.0.0-alpha.505
NuGet\Install-Package Trellis.Messaging.AzureServiceBus -Version 3.0.0-alpha.505
<PackageReference Include="Trellis.Messaging.AzureServiceBus" Version="3.0.0-alpha.505" />
<PackageVersion Include="Trellis.Messaging.AzureServiceBus" Version="3.0.0-alpha.505" />
<PackageReference Include="Trellis.Messaging.AzureServiceBus" />
paket add Trellis.Messaging.AzureServiceBus --version 3.0.0-alpha.505
#r "nuget: Trellis.Messaging.AzureServiceBus, 3.0.0-alpha.505"
#:package Trellis.Messaging.AzureServiceBus@3.0.0-alpha.505
#addin nuget:?package=Trellis.Messaging.AzureServiceBus&version=3.0.0-alpha.505&prerelease
#tool nuget:?package=Trellis.Messaging.AzureServiceBus&version=3.0.0-alpha.505&prerelease
Trellis.Messaging.AzureServiceBus
Azure Service Bus transport for Trellis integration events — the wire between a producer's transactional outbox and a consumer's deduplicating inbox.
The transport's central obligation is to carry the producer's outbox row id verbatim as the Service Bus MessageId. Outbox relay delivery is at-least-once, so the same row can be published more than once; carrying its id is what lets the consumer's (ConsumerId, MessageId) inbox dedup collapse those copies into one effective processing.
Producing
services.AddAzureServiceBusIntegrationEventPublisher(
IntegrationEventNameMap.FromAssemblies(typeof(OrderPlaced).Assembly),
options => options.MessageSource = "orders-service");
Replaces the in-process publisher. One topic per contract by default, named after the event's [IntegrationEventName].
Consuming
services.AddAzureServiceBusIntegrationEventConsumer(
IntegrationEventNameMap.FromAssemblies(typeof(OrderPlaced).Assembly),
options => options.Subscribe("orders.order-placed.v1", "billing"));
Requires AddTrellisInbox<TContext>(). Messages are completed on both Processed and SkippedDuplicate, abandoned when a handler throws, and dead-lettered with a reason code when the message itself is unusable.
See the package documentation for the full wire format and settlement rules.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Azure.Messaging.ServiceBus (>= 7.20.2)
- Mediator.Abstractions (>= 3.0.2)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- Microsoft.Identity.Client (>= 4.89.0)
- OpenTelemetry.Api (>= 1.18.0)
- Trellis.Core (>= 3.0.0-alpha.505)
- Trellis.Mediator (>= 3.0.0-alpha.505)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0-alpha.505 | 40 | 9/13/2026 |
| 3.0.0-alpha.495 | 108 | 8/24/2026 |
| 3.0.0-alpha.458 | 91 | 8/19/2026 |
| 3.0.0-alpha.455 | 97 | 8/19/2026 |
| 3.0.0-alpha.449 | 63 | 8/18/2026 |
| 3.0.0-alpha.447 | 61 | 8/18/2026 |