Sdílet prostřednictvím


Začínáme s tématy a předplatnými služby Azure Service Bus (.NET)

V tomto rychlém startu se dozvíte, jak odesílat zprávy do tématu služby Service Bus a přijímat zprávy z odběru tohoto tématu pomocí knihovny Azure.Messaging.ServiceBus .NET.

V tomto rychlém startu provedete následující kroky:

  1. Pomocí webu Azure Portal vytvoříme obor názvů služby Service Bus.
  2. Pomocí webu Azure Portal vytvoříme téma služby Service Bus.
  3. Pomocí webu Azure Portal vytvoříme k tomuto tématu odběr služby Service Bus.
  4. Napište konzolovou aplikaci .NET, která do tématu odešle sadu zpráv.
  5. Napište konzolovou aplikaci .NET pro příjem těchto zpráv z odběru.

Poznámka:

Tento rychlý start obsahuje podrobné pokyny k implementaci jednoduchého scénáře odeslání dávky zpráv do tématu služby Service Bus a přijetí těchto zpráv z odběru tématu. Další ukázky v jiných a pokročilých scénářích najdete v ukázkách .NET služby Service Bus na GitHubu.

  • Tento rychlý start ukazuje dva způsoby připojení ke službě Azure Service Bus: připojovací řetězec a bez hesla. První možnost ukazuje, jak se pomocí připojovací řetězec připojit k oboru názvů služby Service Bus. Druhá možnost ukazuje, jak použít objekt zabezpečení v Microsoft Entra ID a řízení přístupu na základě role (RBAC) pro připojení k oboru názvů služby Service Bus. Nemusíte se starat o pevně zakódované připojovací řetězec v kódu nebo v konfiguračním souboru nebo v zabezpečeném úložišti, jako je Azure Key Vault. Pokud s Azure začínáte, možná zjistíte, že připojovací řetězec možnost bude jednodušší postupovat. Doporučujeme používat možnost bez hesla v reálných aplikacích a produkčních prostředích. Další informace najdete v tématu Ověřování a autorizace.

Požadavky

Pokud s touto službou teprve začínáte, přečtěte si před tímto rychlým startem přehled služby Service Bus.

  • Předplatné Azure. Pokud chcete používat služby Azure, včetně Služby Azure Service Bus, potřebujete předplatné. Pokud nemáte existující účet Azure, můžete si zaregistrovat bezplatnou zkušební verzi.
  • Visual Studio 2022. Ukázková aplikace využívá nové funkce, které byly zavedeny v jazyce C# 10. Stále můžete používat klientskou knihovnu Service Bus s předchozími jazykovými verzemi jazyka C#, ale syntaxe se může lišit. Pokud chcete použít nejnovější syntaxi, doporučujeme nainstalovat .NET 6.0 nebo novější a nastavit jazyk latestna verzi . Pokud používáte Visual Studio, verze před sadou Visual Studio 2022 nejsou kompatibilní s nástroji potřebnými k sestavení projektů C# 10.

Vytvoření oboru názvů na webu Azure Portal

Pokud chcete začít používat entity zasílání zpráv služby Service Bus v Azure, musíte nejprve vytvořit obor názvů s jedinečným názvem v rámci Azure. Obor názvů poskytuje kontejner oborů pro prostředky služby Service Bus (fronty, témata atd.) v rámci vaší aplikace.

Vytvoření oboru názvů:

  1. Přihlaste se k portálu Azure.

  2. Přejděte na stránku Všechny služby.

  3. Na levém navigačním panelu vyberte Možnost Integrace ze seznamu kategorií, najeďte myší na Service Bus a pak vyberte + tlačítko na dlaždici Service Bus.

    Obrázek znázorňující výběr možnosti Vytvořit prostředek, integraci a potom Service Bus v nabídce

  4. Na stránce Základy na stránce Vytvořit obor názvů postupujte takto:

    1. V části Předplatné zvolte předplatné Azure, ve kterém chcete vytvořit obor názvů.

    2. Pro skupinu prostředků zvolte existující skupinu prostředků nebo vytvořte novou.

    3. Zadejte název oboru názvů. Název oboru názvů by měl dodržovat následující zásady vytváření názvů:

      • Název musí být jedinečný v rámci Azure. Systém okamžitě kontroluje, jestli je název dostupný.
      • Délka názvu je nejméně 6 a maximálně 50 znaků.
      • Název může obsahovat pouze písmena, číslice, pomlčky -.
      • Název musí začínat písmenem a končit písmenem nebo číslem.
      • Název nekončí -sb nebo -mgmt.
    4. V části Umístění zvolte oblast, ve které má být váš obor názvů hostovaný.

    5. V části Cenová úroveň vyberte cenovou úroveň (Basic, Standard nebo Premium) pro obor názvů. Pro účely tohoto rychlého startu vyberte Standard.

    6. Pokud vyberete úroveň Premium , vyberte, jestli pro obor názvů můžete povolit geografickou replikaci . Funkce geografické replikace zajišťuje, že se metadata a data oboru názvů průběžně replikují z primární oblasti do jedné nebo více sekundárních oblastí.

      Důležité

      Pokud chcete použít témata a předplatná, zvolte Standard nebo Premium. Témata nebo předplatná se nepodporují v cenové úrovni Basic.

      Pokud jste vybrali cenovou úroveň Premium , zadejte počet jednotek zasílání zpráv. Úroveň Premium poskytuje izolaci prostředků na úrovni procesoru a paměti, aby každá úloha běžela izolovaně. Kontejner prostředků se nazývá jednotka zasílání zpráv. Obor názvů premium má alespoň jednu jednotku zasílání zpráv. Pro každý obor názvů služby Service Bus Premium můžete vybrat 1, 2, 4, 8 nebo 16 jednotek zasílání zpráv. Další informace najdete v tématu Zasílání zpráv Service Bus Premium.

    7. Vyberte Zkontrolovat a vytvořit v dolní části stránky.

      Obrázek znázorňující stránku Vytvořit obor názvů

    8. Na stránce Zkontrolovat a vytvořit zkontrolujte nastavení a vyberte Vytvořit.

  5. Po úspěšném nasazení prostředku vyberte na stránce nasazení možnost Přejít k prostředku .

    Obrázek znázorňující stránku úspěšného nasazení s odkazem Přejít k prostředku

  6. Zobrazí se domovská stránka vašeho oboru názvů služby Service Bus.

    Obrázek znázorňující domovskou stránku vytvořeného oboru názvů služby Service Bus

Vytvoření tématu pomocí webu Azure Portal

  1. Na stránce Obor názvů služby Service Bus rozbalte entity v navigační nabídce vlevo a v nabídce vlevo vyberte Témata.

  2. Na panelu nástrojů vyberte + Téma .

  3. Zadejte název tématu. U ostatních možností ponechte jejich výchozí hodnoty.

  4. Vyberte Vytvořit.

    Obrázek znázorňující stránku Vytvořit téma

Vytvoření odběru tématu

  1. Vyberte téma, které jste vytvořili v předchozí části.

    Obrázek znázorňující výběr tématu ze seznamu témat

  2. Na stránce Téma služby Service Bus vyberte na panelu nástrojů možnost + Předplatné.

    Obrázek znázorňující tlačítko Přidat předplatné

  3. Na stránce Vytvořit předplatné postupujte takto:

    1. Jako název předplatného zadejte S1.

    2. Zadejte 3 pro maximální počet doručení.

    3. Potom vyberte Vytvořit a vytvořte předplatné.

      Obrázek znázorňující stránku Vytvořit předplatné

Ověření aplikace v Azure

Tento rychlý start ukazuje dva způsoby připojení ke službě Azure Service Bus: bez hesla a připojovací řetězec.

První možnost ukazuje, jak se pomocí objektu zabezpečení v Microsoft Entra ID a řízení přístupu na základě role (RBAC) připojit k oboru názvů služby Service Bus. Nemusíte se starat o pevně zakódované připojovací řetězec v kódu nebo v konfiguračním souboru nebo v zabezpečeném úložišti, jako je Azure Key Vault.

Druhá možnost ukazuje, jak se pomocí připojovací řetězec připojit k oboru názvů služby Service Bus. Pokud s Azure začínáte, možná zjistíte, že připojovací řetězec možnost bude jednodušší postupovat. Doporučujeme používat možnost bez hesla v reálných aplikacích a produkčních prostředích. Další informace najdete v tématu Ověřování a autorizace. Další informace o ověřování bez hesla najdete na stránce přehledu.

Přiřazení rolí uživateli Microsoft Entra

Při místním vývoji se ujistěte, že uživatelský účet, který se připojuje ke službě Azure Service Bus, má správná oprávnění. K odesílání a příjmu zpráv budete potřebovat roli Vlastník dat služby Azure Service Bus. K přiřazení této role budete potřebovat roli Správce uživatelských přístupů nebo jinou roli, která tuto Microsoft.Authorization/roleAssignments/write akci zahrnuje. Role Azure RBAC můžete uživateli přiřadit pomocí webu Azure Portal, Azure CLI nebo Azure PowerShellu. Další informace o dostupných oborech pro přiřazení rolí najdete na stránce přehledu oboru.

Následující příklad přiřadí roli k vašemu uživatelskému Azure Service Bus Data Owner účtu, který poskytuje úplný přístup k prostředkům služby Azure Service Bus. V reálném scénáři postupujte podle principu nejnižšího oprávnění , aby uživatelům poskytla pouze minimální oprávnění potřebná pro bezpečnější produkční prostředí.

Předdefinované role Azure pro Azure Service Bus

Pro Službu Azure Service Bus je správa oborů názvů a všech souvisejících prostředků prostřednictvím webu Azure Portal a rozhraní API pro správu prostředků Azure už chráněná pomocí modelu Azure RBAC. Azure poskytuje následující předdefinované role Azure pro autorizaci přístupu k oboru názvů služby Service Bus:

  • Vlastník dat služby Azure Service Bus: Umožňuje přístup k datům k oboru názvů služby Service Bus a jeho entitám (fronty, témata, odběry a filtry). Člen této role může odesílat a přijímat zprávy z front nebo témat nebo odběrů.
  • Odesílatel dat služby Azure Service Bus: Pomocí této role můžete udělit přístup k oboru názvů služby Service Bus a jeho entitám.
  • Příjemce dat služby Azure Service Bus: Pomocí této role můžete udělit přístup k oboru názvů služby Service Bus a jeho entitám.

Pokud chcete vytvořit vlastní roli, přečtěte si téma Práva potřebná pro operace služby Service Bus.

Přidání uživatele Microsoft Entra do role vlastníka služby Azure Service Bus

Přidejte své uživatelské jméno Microsoft Entra do role Vlastník dat služby Azure Service Bus na úrovni oboru názvů služby Service Bus. Umožní aplikaci spuštěnou v kontextu vašeho uživatelského účtu odesílat zprávy do fronty nebo tématu a přijímat zprávy z fronty nebo odběru tématu.

Důležité

Ve většině případů bude trvat minutu nebo dvě, než se přiřazení role rozšíří v Azure. Ve výjimečných případech může trvat až osm minut. Pokud při prvním spuštění kódu dojde k chybám ověřování, chvíli počkejte a zkuste to znovu.

  1. Pokud nemáte na webu Azure Portal otevřenou stránku Obor názvů služby Service Bus, najděte obor názvů služby Service Bus pomocí hlavního vyhledávacího panelu nebo levé navigace.

  2. Na stránce přehledu vyberte v nabídce vlevo řízení přístupu (IAM ).

  3. Na stránce Řízení přístupu (IAM) vyberte kartu Přiřazení rolí.

  4. V horní nabídce vyberte + Přidat a potom přidejte přiřazení role z výsledné rozevírací nabídky.

    Snímek obrazovky znázorňující, jak přiřadit roli

  5. Pomocí vyhledávacího pole vyfiltrujte výsledky podle požadované role. V tomto příkladu vyhledejte Azure Service Bus Data Owner a vyberte odpovídající výsledek. Pak zvolte Další.

  6. V části Přiřadit přístup vyberte Uživatel, skupina nebo instanční objekt a pak zvolte + Vybrat členy.

  7. V dialogovém okně vyhledejte své uživatelské jméno Microsoft Entra (obvykle vaše user@domain e-mailová adresa) a pak v dolní části dialogového okna zvolte Vybrat .

  8. Vyberte Zkontrolovat a přiřadit přejděte na poslední stránku a pak proces dokončete opětovnou kontrolou a přiřazením .

Spuštění sady Visual Studio a přihlášení k Azure

Přístup k oboru názvů služby Service Bus můžete autorizovat pomocí následujícího postupu:

  1. Spusťte Visual Studio. Pokud se zobrazí okno Začínáme , vyberte v pravém podokně odkaz Pokračovat bez kódu .

  2. V pravém horním rohu sady Visual Studio vyberte tlačítko Přihlásit se.

    Snímek obrazovky s tlačítkem pro přihlášení k Azure pomocí sady Visual Studio

  3. Přihlaste se pomocí účtu Microsoft Entra, kterému jste přiřadili roli dříve.

    Snímek obrazovky znázorňující výběr účtu

Odesílání zpráv do tématu

V této části se dozvíte, jak vytvořit konzolovou aplikaci .NET pro odesílání zpráv do tématu služby Service Bus.

Poznámka:

Tento rychlý start obsahuje podrobné pokyny k implementaci jednoduchého scénáře odeslání dávky zpráv do tématu služby Service Bus a přijetí těchto zpráv z odběru tématu. Další ukázky v jiných a pokročilých scénářích najdete v ukázkách .NET služby Service Bus na GitHubu.

Vytvoření konzolové aplikace

  1. V sadě Visual Studio vyberte nabídku Soubor ->Nový ->Projekt .
  2. V dialogovém okně Vytvořit nový projekt proveďte následující kroky: Pokud toto dialogové okno nevidíte, vyberte v nabídce Soubor , vyberte Nový a pak vyberte Projekt.
    1. Vyberte jazyk C# pro programovací jazyk.

    2. Vyberte konzolu pro typ aplikace.

    3. V seznamu výsledků vyberte konzolovou aplikaci .

    4. Pak vyberte Další.

      Obrázek znázorňující dialogové okno Vytvořit nový projekt s vybraným jazykem C# a konzolou

  3. Jako název projektu zadejte TopicSender, ServiceBusTopicQuickStart pro název řešení a pak vyberte Další.
  4. Na stránce Další informace vyberte Vytvořit, abyste vytvořili řešení a projekt.

Přidání balíčků NuGet do projektu

  1. V nabídce vyberte Nástroje>NuGet Správce balíčků> Správce balíčků Konzola.

  2. Spuštěním následujícího příkazu nainstalujte balíček NuGet Azure.Messaging.ServiceBus .

    Install-Package Azure.Messaging.ServiceBus
    
  3. Spuštěním následujícího příkazu nainstalujte balíček NuGet Azure.Identity .

    Install-Package Azure.Identity
    

Přidání kódu pro odesílání zpráv do tématu

  1. Obsah Program.cs nahraďte následujícím kódem. Důležité kroky jsou popsané v této části s dalšími informacemi v komentářích ke kódu.

    1. Vytvoří objekt ServiceBusClient pomocí objektuDefaultAzureCredential. DefaultAzureCredential automaticky zjistí a použije přihlašovací údaje vašeho přihlášení k sadě Visual Studio k ověření ve službě Azure Service Bus.
    2. Vyvolá CreateSender metoda na ServiceBusClient objekt vytvořit ServiceBusSender objekt pro konkrétní téma Service Bus.
    3. Vytvoří ServiceBusMessageBatch objekt pomocí ServiceBusSender.CreateMessageBatchAsync.
    4. Přidejte zprávy do dávky pomocí ServiceBusMessageBatch.TryAddMessage.
    5. Odešle dávku zpráv do tématu služby Service Bus pomocí metody ServiceBusSender.SendMessagesAsync .

    Důležité

    Aktualizujte zástupné hodnoty (<NAMESPACE-NAME> a <TOPIC-NAME>) v fragmentu kódu s názvy oboru názvů a tématu služby Service Bus.

    using System.Threading.Tasks;
    using Azure.Messaging.ServiceBus;
    using Azure.Identity;
    
    // the client that owns the connection and can be used to create senders and receivers
    ServiceBusClient client;
    
    // the sender used to publish messages to the topic
    ServiceBusSender sender;
    
    // number of messages to be sent to the topic
    const int numOfMessages = 3;
    
    // The Service Bus client types are safe to cache and use as a singleton for the lifetime
    // of the application, which is best practice when messages are being published or read
    // regularly.
    
    //TODO: Replace the "<NAMESPACE-NAME>" and "<TOPIC-NAME>" placeholders.
    client = new ServiceBusClient(
        "<NAMESPACE-NAME>.servicebus.windows.net",
        new DefaultAzureCredential());
    sender = client.CreateSender("<TOPIC-NAME>");
    
    // create a batch 
    using ServiceBusMessageBatch messageBatch = await sender.CreateMessageBatchAsync();
    
    for (int i = 1; i <= numOfMessages; i++)
    {
        // try adding a message to the batch
        if (!messageBatch.TryAddMessage(new ServiceBusMessage($"Message {i}")))
        {
            // if it is too large for the batch
            throw new Exception($"The message {i} is too large to fit in the batch.");
        }
    }
    
    try
    {
        // Use the producer client to send the batch of messages to the Service Bus topic
        await sender.SendMessagesAsync(messageBatch);
        Console.WriteLine($"A batch of {numOfMessages} messages has been published to the topic.");
    }
    finally
    {
        // Calling DisposeAsync on client types is required to ensure that network
        // resources and other unmanaged objects are properly cleaned up.
        await sender.DisposeAsync();
        await client.DisposeAsync();
    }
    
    Console.WriteLine("Press any key to end the application");
    Console.ReadKey();
    
  2. Sestavte projekt a ujistěte se, že nedošlo k žádným chybám.

  3. Spusťte program a počkejte na potvrzovací zprávu.

    A batch of 3 messages has been published to the topic
    

    Důležité

    Ve většině případů bude trvat minutu nebo dvě, než se přiřazení role rozšíří v Azure. Ve výjimečných případech může trvat až osm minut. Pokud při prvním spuštění kódu dojde k chybám ověřování, chvíli počkejte a zkuste to znovu.

  4. Na webu Azure Portal postupujte takto:

    1. Přejděte do oboru názvů služby Service Bus.

    2. Na stránce Přehled v dolním prostředním podokně přepněte na kartu Témata a vyberte téma služby Service Bus. V následujícím příkladu je mytopicto .

      Vybrat téma

    3. Na stránce Téma služby Service Bus uvidíte v grafu Zprávy v dolní části Metriky tři příchozí zprávy. Pokud hodnotu nevidíte, počkejte několik minut a aktualizujte stránku, aby se zobrazil aktualizovaný graf.

      Zprávy odeslané do tématu

    4. Vyberte předplatné v dolním podokně. V následujícím příkladu je to S1. Na stránce Odběr služby Service Bus se zobrazí počet aktivních zpráv jako 3. Odběr obdržel tři zprávy, které jste odeslali do tématu, ale žádný příjemce je zatím nevybral.

      Zprávy přijaté v odběru

Příjem zpráv z odběru

V této části vytvoříte konzolovou aplikaci .NET, která přijímá zprávy z odběru tématu služby Service Bus.

Poznámka:

Tento rychlý start obsahuje podrobné pokyny k implementaci jednoduchého scénáře odeslání dávky zpráv do tématu služby Service Bus a přijetí těchto zpráv z odběru tématu. Další ukázky v jiných a pokročilých scénářích najdete v ukázkách .NET služby Service Bus na GitHubu.

Vytvoření projektu pro příjemce

  1. V okně Průzkumník řešení klikněte pravým tlačítkem na řešení ServiceBusTopicQuickStart, přejděte na příkaz Přidat a vyberte Nový projekt.
  2. Vyberte Konzolová aplikace a vyberte Další.
  3. Jako název projektu zadejte SubscriptionReceiver a vyberte Další.
  4. Na stránce Další informace vyberte Vytvořit.
  5. V okně Průzkumník řešení klikněte pravým tlačítkem na SubscriptionReceiver a vyberte Nastavit jako spouštěný projekt.

Přidání balíčků NuGet do projektu

  1. V nabídce vyberte Nástroje>NuGet Správce balíčků> Správce balíčků Konzola.

  2. V rozevíracím seznamu Výchozí projekt vyberte SubscriptionReceiver.

  3. Spuštěním následujícího příkazu nainstalujte balíček NuGet Azure.Messaging.ServiceBus .

    Install-Package Azure.Messaging.ServiceBus
    
  4. Spuštěním následujícího příkazu nainstalujte balíček NuGet Azure.Identity .

    Install-Package Azure.Identity
    

Přidání kódu pro příjem zpráv z odběru

V této části přidáte kód pro načtení zpráv z odběru.

  1. Nahraďte existující obsah Program.cs následujícími vlastnostmi a metodami:

    using System.Threading.Tasks;
    using Azure.Messaging.ServiceBus;
    using Azure.Identity;
    
    // the client that owns the connection and can be used to create senders and receivers
    ServiceBusClient client;
    
    // the processor that reads and processes messages from the subscription
    ServiceBusProcessor processor;    
    
    // handle received messages
    async Task MessageHandler(ProcessMessageEventArgs args)
    {
        string body = args.Message.Body.ToString();
        Console.WriteLine($"Received: {body} from subscription.");
    
        // complete the message. messages is deleted from the subscription. 
        await args.CompleteMessageAsync(args.Message);
    }
    
    // handle any errors when receiving messages
    Task ErrorHandler(ProcessErrorEventArgs args)
    {
        Console.WriteLine(args.Exception.ToString());
        return Task.CompletedTask;
    }
    
  2. Na konec Program.cssouboru připojte následující kód .

    Důležité

    Aktualizujte zástupné hodnoty (<NAMESPACE-NAME>, <TOPIC-NAME>, <SUBSCRIPTION-NAME>) v fragmentu kódu s názvy oboru názvů, tématu a odběru služby Service Bus.

    Další informace najdete v komentářích ke kódu.

    // The Service Bus client types are safe to cache and use as a singleton for the lifetime
    // of the application, which is best practice when messages are being published or read
    // regularly.
    //
    // Create the clients that we'll use for sending and processing messages.
    // TODO: Replace the <NAMESPACE-NAME> placeholder
    client = new ServiceBusClient(
        "<NAMESPACE-NAME>.servicebus.windows.net",
        new DefaultAzureCredential());
    
    // create a processor that we can use to process the messages
    // TODO: Replace the <TOPIC-NAME> and <SUBSCRIPTION-NAME> placeholders
    processor = client.CreateProcessor("<TOPIC-NAME>", "<SUBSCRIPTION-NAME>", new ServiceBusProcessorOptions());
    
    try
    {
        // add handler to process messages
        processor.ProcessMessageAsync += MessageHandler;
    
        // add handler to process any errors
        processor.ProcessErrorAsync += ErrorHandler;
    
        // start processing 
        await processor.StartProcessingAsync();
    
        Console.WriteLine("Wait for a minute and then press any key to end the processing");
        Console.ReadKey();
    
        // stop processing 
        Console.WriteLine("\nStopping the receiver...");
        await processor.StopProcessingAsync();
        Console.WriteLine("Stopped receiving messages");
    }
    finally
    {
        // Calling DisposeAsync on client types is required to ensure that network
        // resources and other unmanaged objects are properly cleaned up.
        await processor.DisposeAsync();
        await client.DisposeAsync();
    }
    
  3. Podívejte Program.cs se, jak by měl vypadat:

    using System;
    using System.Threading.Tasks;
    using Azure.Messaging.ServiceBus;
    using Azure.Identity;
    
    // the client that owns the connection and can be used to create senders and receivers
    ServiceBusClient client;
    
    // the processor that reads and processes messages from the subscription
    ServiceBusProcessor processor;
    
    // handle received messages
    async Task MessageHandler(ProcessMessageEventArgs args)
    {
        string body = args.Message.Body.ToString();
        Console.WriteLine($"Received: {body} from subscription.");
    
        // complete the message. messages is deleted from the subscription. 
        await args.CompleteMessageAsync(args.Message);
    }
    
    // handle any errors when receiving messages
    Task ErrorHandler(ProcessErrorEventArgs args)
    {
        Console.WriteLine(args.Exception.ToString());
        return Task.CompletedTask;
    }
    
    // The Service Bus client types are safe to cache and use as a singleton for the lifetime
    // of the application, which is best practice when messages are being published or read
    // regularly.
    //
    // Create the clients that we'll use for sending and processing messages.
    // TODO: Replace the <NAMESPACE-NAME> placeholder
    client = new ServiceBusClient(
        "<NAMESPACE-NAME>.servicebus.windows.net",
        new DefaultAzureCredential());
    
    // create a processor that we can use to process the messages
    // TODO: Replace the <TOPIC-NAME> and <SUBSCRIPTION-NAME> placeholders
    processor = client.CreateProcessor("<TOPIC-NAME>", "<SUBSCRIPTION-NAME>", new ServiceBusProcessorOptions());
    
    try
    {
        // add handler to process messages
        processor.ProcessMessageAsync += MessageHandler;
    
        // add handler to process any errors
        processor.ProcessErrorAsync += ErrorHandler;
    
        // start processing 
        await processor.StartProcessingAsync();
    
        Console.WriteLine("Wait for a minute and then press any key to end the processing");
        Console.ReadKey();
    
        // stop processing 
        Console.WriteLine("\nStopping the receiver...");
        await processor.StopProcessingAsync();
        Console.WriteLine("Stopped receiving messages");
    }
    finally
    {
        // Calling DisposeAsync on client types is required to ensure that network
        // resources and other unmanaged objects are properly cleaned up.
        await processor.DisposeAsync();
        await client.DisposeAsync();
    }
    
  4. Sestavte projekt a ujistěte se, že nedošlo k žádným chybám.

  5. Spusťte aplikaci příjemce. Měly by se zobrazit přijaté zprávy. Stisknutím libovolné klávesy zastavte přijímač a aplikaci.

    Wait for a minute and then press any key to end the processing
    Received: Message 1 from subscription: S1
    Received: Message 2 from subscription: S1
    Received: Message 3 from subscription: S1
    
    Stopping the receiver...
    Stopped receiving messages
    
  6. Znovu zkontrolujte portál.

    • Na stránce Téma služby Service Bus se v grafu Zprávy zobrazí tři příchozí zprávy a tři odchozí zprávy. Pokud tato čísla nevidíte, počkejte několik minut a aktualizujte stránku, aby se zobrazil aktualizovaný graf.

      Odeslané a přijaté zprávy

    • Na stránce Odběr služby Service Bus se zobrazí zpráva Aktivní jako nula. Je to proto, že příjemce obdržel zprávy z tohoto odběru a dokončil zprávy.

      Počet aktivních zpráv v odběru na konci

Další kroky

Projděte si následující dokumentaci a ukázky: