Partage via


Comment créer un WebPubSubServiceClient avec .NET et Azure Identity

Ce guide pratique vous montre comment créer un WebPubSubServiceClient en utilisant Microsoft Entra ID en .NET.

Spécifications

  • Installez Azure.Identity à partir de nuget.org.

    dotnet add package Azure.Identity
    
  • Installez Azure.Messaging.WebPubSub à partir de nuget.org

    dotnet add package Azure.Messaging.WebPubSub
    
  • Si vous utilisez DependencyInjection, installez Microsoft.Extensions.Azure à partir de nuget.org

    dotnet add package Microsoft.Extensions.Azure
    

Exemples de code

  1. Créez un TokenCredential avec Azure Identity SDK.

    using Azure.Identity;
    
    namespace chatapp
    {
        public class Program
        {
            public static void Main(string[] args)
            {
                var credential = new DefaultAzureCredential();
            }
        }
    }
    

    credential peut être toute classe qui hérite de la classe TokenCredential.

    • EnvironmentCredential
    • ClientSecretCredential
    • ClientCertificateCredential
    • ManagedIdentityCredential
    • VisualStudioCredential
    • VisualStudioCodeCredential
    • AzureCliCredential

    Pour en savoir plus, consultez Bibliothèque de client Azure Identity pour .NET

  2. Créez ensuite un client avec endpoint, hub et credential.

    using Azure.Identity;
    using Azure.Messaging.WebPubSub;
    
    public class Program
    {
        public static void Main(string[] args)
        {
            var credential = new DefaultAzureCredential();
            var client = new WebPubSubServiceClient(new Uri("<endpoint>"), "<hub>", credential);
        }
    }
    

    Ou injecter-le dans IServiceCollections avec nos BuilderExtensions.

    using System;
    
    using Azure.Identity;
    
    using Microsoft.Extensions.Azure;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.DependencyInjection;
    
    namespace chatapp
    {
        public class Startup
        {
            public Startup(IConfiguration configuration)
            {
                Configuration = configuration;
            }
    
            public IConfiguration Configuration { get; }
    
            public void ConfigureServices(IServiceCollection services)
            {
                services.AddAzureClients(builder =>
                {
                    var credential = new DefaultAzureCredential();
                    builder.AddWebPubSubServiceClient(new Uri("<endpoint>"), "<hub>", credential);
                });
            }
        }
    }
    

    Pour découvrir comment utiliser ce client, consultez Bibliothèque de client Azure Web PubSub pour .NET

Exemple complet