# AspireWebPubSubExtensions

- Kind: `class`
- Package: [Aspire.Azure.Messaging.WebPubSub](/reference/api/csharp/aspire.azure.messaging.webpubsub.md)
- Version: `13.3.0`
- Namespace: `Microsoft.Extensions.Hosting`
- Target framework: `net10.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/5bd693ae1897dee5e2ce71c2cc08879c1c7eff51/src/Components/Aspire.Azure.Messaging.WebPubSub/AspireWebPubSubExtensions.cs)

Provides extension methods for registering `WebPubSub.WebPubSubServiceClient` as a singleton in the services provided by the `Hosting.IHostApplicationBuilder`.

## Definition

```csharp
namespace Microsoft.Extensions.Hosting;

public static class AspireWebPubSubExtensions
{
    // ...
}
```

## Methods

- [AddAzureWebPubSubServiceClient(IHostApplicationBuilder, string, Action<AzureMessagingWebPubSubSettings>, Action<IAzureClientBuilder<WebPubSubServiceClient, WebPubSubServiceClientOptions>>)](/reference/api/csharp/aspire.azure.messaging.webpubsub/aspirewebpubsubextensions/methods.md#addazurewebpubsubserviceclient-ihostapplicationbuilder-string-action-azuremessagingwebpubsubsettings-action-iazureclientbuilder-webpubsubserviceclient-webpubsubserviceclientoptions) `extension` -- Registers `WebPubSub.WebPubSubServiceClient` as a singleton in the services provided by the `builder`.
- [AddKeyedAzureWebPubSubServiceClient(IHostApplicationBuilder, string, string, Action<AzureMessagingWebPubSubSettings>, Action<IAzureClientBuilder<WebPubSubServiceClient, WebPubSubServiceClientOptions>>)](/reference/api/csharp/aspire.azure.messaging.webpubsub/aspirewebpubsubextensions/methods.md#addkeyedazurewebpubsubserviceclient-ihostapplicationbuilder-string-string-action-azuremessagingwebpubsubsettings-action-iazureclientbuilder-webpubsubserviceclient-webpubsubserviceclientoptions) `extension` -- Registers `WebPubSub.WebPubSubServiceClient` as a singleton for given `connectionName` and `serviceKey` in the services provided by the `builder`.
- [AddKeyedAzureWebPubSubServiceClient(IHostApplicationBuilder, string, Action<AzureMessagingWebPubSubSettings>, Action<IAzureClientBuilder<WebPubSubServiceClient, WebPubSubServiceClientOptions>>)](/reference/api/csharp/aspire.azure.messaging.webpubsub/aspirewebpubsubextensions/methods.md#addkeyedazurewebpubsubserviceclient-ihostapplicationbuilder-string-action-azuremessagingwebpubsubsettings-action-iazureclientbuilder-webpubsubserviceclient-webpubsubserviceclientoptions) `extension` -- Registers `WebPubSub.WebPubSubServiceClient` as a singleton for given `connectionName` in the services provided by the `builder`. This overload does not require a service key and uses the connection name as the service key to support scenarios where multiple Hubs are referenced in the same application.
