Skip to content
DocsTry Aspire
DocsTry

AzureServiceBusExtensions Methods

ClassMethods16 members
Provides extension methods for adding the Azure Service Bus resources to the application model.
AddAzureServiceBus(IDistributedApplicationBuilder, string)Section titled AddAzureServiceBus(IDistributedApplicationBuilder, string)extensionIResourceBuilder<AzureServiceBusResource>
Adds an Azure Service Bus Namespace resource to the application model. This resource can be used to create queue, topic, and subscription resources.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusResource> AddAzureServiceBus(
this IDistributedApplicationBuilder builder,
string name)
{
// ...
}
}
builderIDistributedApplicationBuilderThe builder for the distributed application.
namestringThe name of the resource.
IResourceBuilder<AzureServiceBusResource>A reference to the ApplicationModel.IResourceBuilder`1.
By default references to the Azure Service Bus resource will be assigned the following roles: - ServiceBusBuiltInRole.AzureServiceBusDataOwner These can be replaced by calling AzureServiceBusExtensions.WithRoleAssignments.
AddQueue(IResourceBuilder<AzureServiceBusResource>, string)Section titled AddQueue(IResourceBuilder<AzureServiceBusResource>, string)extensionIResourceBuilder<AzureServiceBusResource>
Adds an Azure Service Bus Queue resource to the application model.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusResource> AddQueue(
this IResourceBuilder<AzureServiceBusResource> builder,
string name)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusResource>The Azure Service Bus resource builder.
namestringThe name of the queue resource.
IResourceBuilder<AzureServiceBusResource>A reference to the ApplicationModel.IResourceBuilder`1.
This method is not available in polyglot app hosts. Use AzureServiceBusExtensions.AddServiceBusQueue instead.
AddServiceBusQueue(IResourceBuilder<AzureServiceBusResource>, string, string?)Section titled AddServiceBusQueue(IResourceBuilder<AzureServiceBusResource>, string, string?)extensionIResourceBuilder<AzureServiceBusQueueResource>
Adds an Azure Service Bus Queue resource to the application model.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusQueueResource> AddServiceBusQueue(
this IResourceBuilder<AzureServiceBusResource> builder,
string name,
string? queueName = null)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusResource>The Azure Service Bus resource builder.
namestringThe name of the queue resource.
queueNamestring?optionalThe name of the Service Bus Queue. If not provided, this defaults to the same value as name.
IResourceBuilder<AzureServiceBusQueueResource>A reference to the ApplicationModel.IResourceBuilder`1.
AddServiceBusSubscription(IResourceBuilder<AzureServiceBusTopicResource>, string, string?)Section titled AddServiceBusSubscription(IResourceBuilder<AzureServiceBusTopicResource>, string, string?)extensionIResourceBuilder<AzureServiceBusSubscriptionResource>
Adds an Azure Service Bus Subscription resource to the application model.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusSubscriptionResource> AddServiceBusSubscription(
this IResourceBuilder<AzureServiceBusTopicResource> builder,
string name,
string? subscriptionName = null)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusTopicResource>The Azure Service Bus Topic resource builder.
namestringThe name of the subscription resource.
subscriptionNamestring?optionalThe name of the Service Bus Subscription. If not provided, this defaults to the same value as name.
IResourceBuilder<AzureServiceBusSubscriptionResource>A reference to the ApplicationModel.IResourceBuilder`1.
AddServiceBusTopic(IResourceBuilder<AzureServiceBusResource>, string, string?)Section titled AddServiceBusTopic(IResourceBuilder<AzureServiceBusResource>, string, string?)extensionIResourceBuilder<AzureServiceBusTopicResource>
Adds an Azure Service Bus Topic resource to the application model.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusTopicResource> AddServiceBusTopic(
this IResourceBuilder<AzureServiceBusResource> builder,
string name,
string? topicName = null)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusResource>The Azure Service Bus resource builder.
namestringThe name of the topic resource.
topicNamestring?optionalThe name of the Service Bus Topic. If not provided, this defaults to the same value as name.
IResourceBuilder<AzureServiceBusTopicResource>A reference to the ApplicationModel.IResourceBuilder`1.
AddSubscription(IResourceBuilder<AzureServiceBusResource>, string, string)Section titled AddSubscription(IResourceBuilder<AzureServiceBusResource>, string, string)extensionIResourceBuilder<AzureServiceBusResource>
Adds an Azure Service Bus Subscription resource to the application model.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusResource> AddSubscription(
this IResourceBuilder<AzureServiceBusResource> builder,
string topicName,
string subscriptionName)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusResource>The Azure Service Bus resource builder.
topicNamestringThe name of the topic resource.
subscriptionNamestringThe name of the subscription.
IResourceBuilder<AzureServiceBusResource>A reference to the ApplicationModel.IResourceBuilder`1.
This method is not available in polyglot app hosts. Use AzureServiceBusExtensions.AddServiceBusSubscription instead.
AddTopic(IResourceBuilder<AzureServiceBusResource>, string)Section titled AddTopic(IResourceBuilder<AzureServiceBusResource>, string)extensionIResourceBuilder<AzureServiceBusResource>
Adds an Azure Service Bus Topic resource to the application model.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusResource> AddTopic(
this IResourceBuilder<AzureServiceBusResource> builder,
string name)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusResource>The Azure Service Bus resource builder.
namestringThe name of the topic resource.
This method is not available in polyglot app hosts. Use AzureServiceBusExtensions.AddServiceBusTopic instead.
AddTopic(IResourceBuilder<AzureServiceBusResource>, string, string[])Section titled AddTopic(IResourceBuilder<AzureServiceBusResource>, string, string[])extensionIResourceBuilder<AzureServiceBusResource>
Adds an Azure Service Bus Topic resource to the application model.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusResource> AddTopic(
this IResourceBuilder<AzureServiceBusResource> builder,
string name,
string[] subscriptions)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusResource>The Azure Service Bus resource builder.
namestringThe name of the topic resource.
subscriptionsstring[]The name of the subscriptions.
This method is not available in polyglot app hosts. Use AzureServiceBusExtensions.AddServiceBusTopic and AzureServiceBusExtensions.AddServiceBusSubscription instead.
RunAsEmulator(IResourceBuilder<AzureServiceBusResource>, Action<IResourceBuilder<AzureServiceBusEmulatorResource>>)Section titled RunAsEmulator(IResourceBuilder<AzureServiceBusResource>, Action<IResourceBuilder<AzureServiceBusEmulatorResource>>)extensionIResourceBuilder<AzureServiceBusResource>
Configures an Azure Service Bus resource to be emulated. This resource requires an AzureServiceBusResource to be added to the application model.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusResource> RunAsEmulator(
this IResourceBuilder<AzureServiceBusResource> builder,
Action<IResourceBuilder<AzureServiceBusEmulatorResource>>? configureContainer = null)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusResource>
configureContainerAction<IResourceBuilder<AzureServiceBusEmulatorResource>>optional
This version of the package defaults to the tag of the / container image. The Azure Service Bus resource builder. Callback that exposes underlying container used for emulation to allow for customization. A reference to the ApplicationModel.IResourceBuilder`1. The resource builder. The following example creates an Azure Service Bus resource that runs locally is an emulator and referencing that resource in a .NET project.
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("myservicebus")
.RunAsEmulator()
.AddQueue("queue");
builder.AddProject<Projects.InventoryService>()
.WithReference(serviceBus);
builder.Build().Run();
WithConfiguration(IResourceBuilder<AzureServiceBusEmulatorResource>, Action<JsonNode>)Section titled WithConfiguration(IResourceBuilder<AzureServiceBusEmulatorResource>, Action<JsonNode>)extensionIResourceBuilder<AzureServiceBusEmulatorResource>
Alters the JSON configuration document used by the emulator.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusEmulatorResource> WithConfiguration(
this IResourceBuilder<AzureServiceBusEmulatorResource> builder,
Action<JsonNode> configJson)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusEmulatorResource>The builder for the AzureServiceBusEmulatorResource.
configJsonAction<JsonNode>A callback to update the JSON object representation of the configuration.
IResourceBuilder<AzureServiceBusEmulatorResource>A reference to the ApplicationModel.IResourceBuilder`1.
This method is not available in polyglot app hosts. Use AzureServiceBusExtensions.WithConfigurationFile instead to provide a configuration file. Here is an example of how to configure the emulator to use a different logging mechanism:
var builder = DistributedApplication.CreateBuilder(args);
builder.AddAzureServiceBus("servicebusns")
.RunAsEmulator(configure => configure
.WithConfiguration(document =>
{
document["UserConfig"]!["Logging"] = new JsonObject { ["Type"] = "Console" };
});
);
WithConfigurationFile(IResourceBuilder<AzureServiceBusEmulatorResource>, string)Section titled WithConfigurationFile(IResourceBuilder<AzureServiceBusEmulatorResource>, string)extensionIResourceBuilder<AzureServiceBusEmulatorResource>
Copies the configuration file into an Azure Service Bus emulator resource.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusEmulatorResource> WithConfigurationFile(
this IResourceBuilder<AzureServiceBusEmulatorResource> builder,
string path)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusEmulatorResource>The builder for the AzureServiceBusEmulatorResource.
pathstringPath to the file on the AppHost where the emulator configuration is located.
IResourceBuilder<AzureServiceBusEmulatorResource>A reference to the ApplicationModel.IResourceBuilder`1.
WithHostPort(IResourceBuilder<AzureServiceBusEmulatorResource>, int?)Section titled WithHostPort(IResourceBuilder<AzureServiceBusEmulatorResource>, int?)extensionIResourceBuilder<AzureServiceBusEmulatorResource>
Configures the host port for the Azure Service Bus emulator is exposed on instead of using randomly assigned port.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusEmulatorResource> WithHostPort(
this IResourceBuilder<AzureServiceBusEmulatorResource> builder,
int? port)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusEmulatorResource>Builder for the Azure Service Bus emulator container
portint?The port to bind on the host. If null is used, a random port will be assigned.
IResourceBuilder<AzureServiceBusEmulatorResource>A reference to the ApplicationModel.IResourceBuilder`1.
WithProperties(IResourceBuilder<AzureServiceBusQueueResource>, Action<AzureServiceBusQueueResource>)Section titled WithProperties(IResourceBuilder<AzureServiceBusQueueResource>, Action<AzureServiceBusQueueResource>)extensionIResourceBuilder<AzureServiceBusQueueResource>
Allows setting the properties of an Azure Service Bus Queue resource.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusQueueResource> WithProperties(
this IResourceBuilder<AzureServiceBusQueueResource> builder,
Action<AzureServiceBusQueueResource> configure)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusQueueResource>The Azure Service Bus Queue resource builder.
configureAction<AzureServiceBusQueueResource>A method that can be used for customizing the AzureServiceBusQueueResource.
IResourceBuilder<AzureServiceBusQueueResource>A reference to the ApplicationModel.IResourceBuilder`1.
WithProperties(IResourceBuilder<AzureServiceBusTopicResource>, Action<AzureServiceBusTopicResource>)Section titled WithProperties(IResourceBuilder<AzureServiceBusTopicResource>, Action<AzureServiceBusTopicResource>)extensionIResourceBuilder<AzureServiceBusTopicResource>
Allows setting the properties of an Azure Service Bus Topic resource.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusTopicResource> WithProperties(
this IResourceBuilder<AzureServiceBusTopicResource> builder,
Action<AzureServiceBusTopicResource> configure)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusTopicResource>The Azure Service Bus Topic resource builder.
configureAction<AzureServiceBusTopicResource>A method that can be used for customizing the AzureServiceBusTopicResource.
IResourceBuilder<AzureServiceBusTopicResource>A reference to the ApplicationModel.IResourceBuilder`1.
WithProperties(IResourceBuilder<AzureServiceBusSubscriptionResource>, Action<AzureServiceBusSubscriptionResource>)Section titled WithProperties(IResourceBuilder<AzureServiceBusSubscriptionResource>, Action<AzureServiceBusSubscriptionResource>)extensionIResourceBuilder<AzureServiceBusSubscriptionResource>
Allows setting the properties of an Azure Service Bus Subscription resource.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<AzureServiceBusSubscriptionResource> WithProperties(
this IResourceBuilder<AzureServiceBusSubscriptionResource> builder,
Action<AzureServiceBusSubscriptionResource> configure)
{
// ...
}
}
builderIResourceBuilder<AzureServiceBusSubscriptionResource>The Azure Service Bus Subscription resource builder.
configureAction<AzureServiceBusSubscriptionResource>A method that can be used for customizing the AzureServiceBusSubscriptionResource.
IResourceBuilder<AzureServiceBusSubscriptionResource>A reference to the ApplicationModel.IResourceBuilder`1.
WithRoleAssignments(IResourceBuilder<T>, IResourceBuilder<AzureServiceBusResource>, ServiceBusBuiltInRole[])Section titled WithRoleAssignments(IResourceBuilder<T>, IResourceBuilder<AzureServiceBusResource>, ServiceBusBuiltInRole[])extensionIResourceBuilder<T>
Assigns the specified roles to the given resource, granting it the necessary permissions on the target Azure Service Bus namespace. This replaces the default role assignments for the resource.
public static class AzureServiceBusExtensions
{
public static IResourceBuilder<T> WithRoleAssignments<T>(
this IResourceBuilder<T> builder,
IResourceBuilder<AzureServiceBusResource> target,
params ServiceBusBuiltInRole[] roles)
{
// ...
}
}
builderIResourceBuilder<T>The resource to which the specified roles will be assigned.
targetIResourceBuilder<AzureServiceBusResource>The target Azure Service Bus namespace.
rolesServiceBusBuiltInRole[]The built-in Service Bus roles to be assigned.
IResourceBuilder<T>The updated ApplicationModel.IResourceBuilder`1 with the applied role assignments.
This overload is not available in polyglot app hosts. Use AzureServiceBusExtensions.WithRoleAssignments instead.
var builder = DistributedApplication.CreateBuilder(args);
var sb = builder.AddAzureServiceBus("bus");
var api = builder.AddProject<Projects.Api>("api")
.WithRoleAssignments(sb, ServiceBusBuiltInRole.AzureServiceBusDataSender)
.WithReference(sb);