Flowly.AzureServiceBus.Aspire
1.3.0
See the version list below for details.
dotnet add package Flowly.AzureServiceBus.Aspire --version 1.3.0
NuGet\Install-Package Flowly.AzureServiceBus.Aspire -Version 1.3.0
<PackageReference Include="Flowly.AzureServiceBus.Aspire" Version="1.3.0" />
<PackageVersion Include="Flowly.AzureServiceBus.Aspire" Version="1.3.0" />
<PackageReference Include="Flowly.AzureServiceBus.Aspire" />
paket add Flowly.AzureServiceBus.Aspire --version 1.3.0
#r "nuget: Flowly.AzureServiceBus.Aspire, 1.3.0"
#:package Flowly.AzureServiceBus.Aspire@1.3.0
#addin nuget:?package=Flowly.AzureServiceBus.Aspire&version=1.3.0
#tool nuget:?package=Flowly.AzureServiceBus.Aspire&version=1.3.0
Flowly.AzureServiceBus.Aspire
.NET Aspire AppHost integration for Flowly with Azure Service Bus. Automatically discovers queues and events from your service's FlowlyConfiguration and registers them with the Azure Service Bus emulator.
Setup
Reference the package with IsAspireProjectResource="false" in the AppHost .csproj:
<PackageReference Include="Flowly.AzureServiceBus.Aspire" IsAspireProjectResource="false" />
Quick Start
// AppHost Program.cs
var azureServiceBus = builder
.AddAzureServiceBus("EmulatorNamespace")
.RunAsEmulator();
var backendProcessor = builder.AddProject<Projects.BackendProcessor>("BackendProcessor");
// Auto-discovers queues from the project's FlowlyConfiguration
azureServiceBus.AddFlowly(backendProcessor);
backendProcessor
.WithReference(azureServiceBus)
.WaitFor(azureServiceBus);
RPC Call Handlers (AddCallSubmitter)
When a service registers an RPC call submitter with AddCallSubmitter<TMessage>(), it creates a reply queue named {callQueue}.reply.{InstanceName}. The emulator must have this queue pre-created, so call AddFlowly for the sender project too — and pass the instanceName that matches FlowlyOptions.InstanceName set in the sender's Program.cs:
// Sender's Program.cs (runtime)
builder.AddFlowly<FlowlyConfiguration>(options =>
{
options.CreateTopology = false;
options.InstanceName = "sender"; // determines the reply queue name
});
// AppHost Program.cs
azureServiceBus.AddFlowly(receiver); // registers the main queue
azureServiceBus.AddFlowly(sender, instanceName: "sender"); // registers the reply queue
Without instanceName, AddFlowly cannot form the correct reply queue name at design time and the call will fail at runtime because the queue does not exist in the emulator.
Explicit Topology
For services that use inline AddFlowly() (no FlowlyConfiguration subclass), declare topology explicitly:
azureServiceBus.AddFlowly(backendProcessor, topology =>
topology
.AddQueue("order-created")
.AddEventSubscription<OrderProcessedEvent>("finance-order-processed-event-handler"));
Documentation
| 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
- Aspire.Hosting.Azure.ServiceBus (>= 13.4.6)
- Flowly (>= 1.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.