Quickstart: Azure Queue Storage-clientbibliotheek v12 voor .NET
Ga aan de slag met de Azure Queue Storage-clientbibliotheek versie 12 voor .NET. Azure Queue Storage is een service waarmee u grote aantallen berichten kunt opslaan om later op te halen en te verwerken. Volg deze stappen om het pakket te installeren en voorbeeldcode voor basistaken uit te proberen.
Gebruik de Azure Queue Storage-clientbibliotheek v12 voor .NET voor het volgende:
- Een wachtrij maken
- Berichten aan een wachtrij toevoegen
- Berichten in een wachtrij bekijken
- Een bericht in een wachtrij bijwerken
- Berichten van een wachtrij ontvangen
- Berichten uit een wachtrij verwijderen
- Een wachtrij verwijderen
Aanvullende bronnen:
Vereisten
- Azure-abonnement: u kunt een gratis abonnement nemen
- Azure Storage-account: maak een opslagaccount
- De huidige versie van de .NET Core SDK voor uw besturingssysteem. Zorg ervoor dat u de SDK en niet de runtime ophaalt.
Instellen
In deze sectie wordt uitgelegd hoe u een project voorbereidt voor gebruik met de Azure Queue Storage-clientbibliotheek v12 voor .NET.
Het project maken
Maak een .NET Core-toepassing met de naam QueuesQuickstartV12.
Gebruik in een consolevenster (zoals cmd, PowerShell of Bash) de opdracht
dotnet newom een nieuwe console-app te maken met de naamQueuesQuickstartV12. Met deze opdracht maakt u een eenvoudig Hallo wereld-C#-project met één bronbestand genaamd:Program.cs.dotnet new console -n QueuesQuickstartV12Schakel over naar de zojuist gemaakte map
QueuesQuickstartV12.cd QueuesQuickstartV12
Het pakket installeren
Blijf in de toepassingsmap en installeer met de opdracht dotnet add package de Azure Queue Storage-clientbibliotheek voor het .NET-pakket.
dotnet add package Azure.Storage.Queues
Het app-framework instellen
Ga als volgt te werk vanuit de projectmap:
- Open het bestand
Program.csin de editor - Verwijder de instructie
Console.WriteLine("Hello, World"); - Voeg
using-instructies toe - De declaratie van de
Main-methode bijwerken ter ondersteuning van async-code
Hier volgt de code:
using Azure;
using Azure.Storage.Queues;
using Azure.Storage.Queues.Models;
using System;
using System.Threading.Tasks;
namespace QueuesQuickstartV12
{
class Program
{
static async Task Main(string[] args)
{
}
}
}
Kopieer uw referenties van de Azure Portal
Wanneer met de voorbeeldtoepassing een aanvraag wordt ingediend bij Azure Storage, moet deze aanvraag worden geautoriseerd. Om een aanvraag te autoriseren voegt u de referenties van uw opslagaccount toe als een verbindingsreeks. Volg deze stappen om uw opslagaccountreferenties te bekijken:
Meld u aan bij Azure Portal.
Zoek uw opslagaccount.
Selecteer in het menudeelvenster van het opslagaccount onder Beveiliging en netwerken de optie Toegangssleutels. Hier kunt u de toegangssleutels voor het account en de volledige connection string voor elke sleutel weergeven.

Selecteer sleutels weergeven in het deelvenster Toegangssleutels.
Zoek in de sectie key1 de waarde van de verbindingsreeks. Selecteer het pictogram Kopiëren naar klembord om de connection string. In de volgende sectie voegt connection string waarde toe aan een omgevingsvariabele.

De opslagverbindingsreeks configureren
Nadat u de connection string, schrijft u deze naar een nieuwe omgevingsvariabele op de lokale computer met de toepassing. Als u de omgevingsvariabele wilt instellen, opent u een consolevenster en volgt u de aanwijzingen voor uw besturingssysteem. Vervang <yourconnectionstring> door de feitelijke verbindingsreeks.
Windows
setx AZURE_STORAGE_CONNECTION_STRING "<yourconnectionstring>"
Nadat u de omgevingsvariabele in Windows hebt toegevoegd, moet u een nieuw exemplaar van het opdrachtvenster starten.
Linux
export AZURE_STORAGE_CONNECTION_STRING="<yourconnectionstring>"
macOS
export AZURE_STORAGE_CONNECTION_STRING="<yourconnectionstring>"
Programma's opnieuw opstarten
Nadat u de omgevingsvariabele hebt toegevoegd, start u actieve programma's die de omgevingsvariabele moeten lezen, opnieuw. Start bijvoorbeeld uw ontwikkelomgeving of editor opnieuw op voordat u doorgaat.
Objectmodel
Azure Queue Storage is een service om grote aantallen berichten op te slaan. Een wachtrijbericht kan maximaal 64 KB groot zijn. Een wachtrij kan miljoenen berichten bevatten, tot aan de totale capaciteitslimiet van een opslagaccount. Wachtrijen worden vaak gebruikt om een voorraad werk te maken dat asynchroon moet worden verwerkt. Queue Storage biedt drie typen resources:
- Het opslagaccount
- Een wachtrij in het opslagaccount
- Berichten in de wachtrij
Het volgende diagram geeft de relatie tussen deze resources weer.

Gebruik de volgende .NET-klassen om te communiceren met deze resources:
QueueServiceClient: Met deQueueServiceClientkunt u alle wachtrijen in uw opslagaccount beheren.QueueClient: Met deQueueClient-klasse kunt u een afzonderlijke wachtrij en de bijbehorende berichten beheren en bewerken.QueueMessage: DeQueueMessage-klasse vertegenwoordigt de afzonderlijke objecten die worden geretourneerd wanneerReceiveMessageswordt aangeroepen voor een wachtrij.
Codevoorbeelden
Deze voorbeeldcodefragmenten laten zien hoe u de volgende acties kunt uitvoeren met de Azure Queue Storage-clientbibliotheek voor .NET:
- De verbindingsreeks ophalen
- Een wachtrij maken
- Berichten aan een wachtrij toevoegen
- Berichten in een wachtrij bekijken
- Een bericht in een wachtrij bijwerken
- Berichten van een wachtrij ontvangen
- Berichten uit een wachtrij verwijderen
- Een wachtrij verwijderen
De verbindingsreeks ophalen
Met de volgende code wordt de verbindingsreeks voor het opslagaccount opgehaald. De verbindingsreeks is opgeslagen in de omgevingsvariabele die is gemaakt in de sectie De opslagverbindingsreeks configureren.
Voeg deze code toe in de methode Main:
Console.WriteLine("Azure Queue Storage client library v12 - .NET quickstart sample\n");
// Retrieve the connection string for use with the application. The storage
// connection string is stored in an environment variable called
// AZURE_STORAGE_CONNECTION_STRING on the machine running the application.
// If the environment variable is created after the application is launched
// in a console or with Visual Studio, the shell or application needs to be
// closed and reloaded to take the environment variable into account.
string connectionString = Environment.GetEnvironmentVariable("AZURE_STORAGE_CONNECTION_STRING");
Een wachtrij maken
Verzin een naam voor de nieuwe wachtrij. Met de volgende code wordt een GUID-waarde aan de wachtrijnaam toegevoegd om te verzekeren dat deze uniek is.
Belangrijk
Wachtrijnamen mogen alleen kleine letters, cijfers en afbreekstreepjes bevatten en moeten beginnen met een letter of cijfer. Elk afbreekstreepje moet worden voorafgegaan en gevolgd door een cijfer of letter. De naam moet bovendien tussen 3 en 63 tekens lang zijn. Zie Naamgeving van wachtrijen en metagegevens voor meer informatie.
Maak een exemplaar van de QueueClient-klasse. Roep vervolgens de methode CreateAsync aan om de wachtrij in uw opslagaccount te maken.
Voeg deze code toe aan het einde van de Main-methode:
// Create a unique name for the queue
string queueName = "quickstartqueues-" + Guid.NewGuid().ToString();
Console.WriteLine($"Creating queue: {queueName}");
// Instantiate a QueueClient which will be
// used to create and manipulate the queue
QueueClient queueClient = new QueueClient(connectionString, queueName);
// Create the queue
await queueClient.CreateAsync();
Berichten aan een wachtrij toevoegen
Met het volgende codefragment worden berichten asynchroon aan de wachtrij toegevoegd door de methode SendMessageAsync aan te roepen. Ook wordt een SendReceipt opgeslagen die met een SendMessageAsync-aanroep wordt geretourneerd. Het resultaat wordt gebruikt om het bericht later in het programma bij te werken.
Voeg deze code toe aan het einde van de Main-methode:
Console.WriteLine("\nAdding messages to the queue...");
// Send several messages to the queue
await queueClient.SendMessageAsync("First message");
await queueClient.SendMessageAsync("Second message");
// Save the receipt so we can update this message later
SendReceipt receipt = await queueClient.SendMessageAsync("Third message");
Berichten in een wachtrij bekijken
Bekijk de berichten in de wachtrij door de methode PeekMessagesAsync aan te roepen. Met deze methode worden één of meer berichten vooraan in de wachtrij opgehaald, maar wordt de zichtbaarheid van het bericht niet gewijzigd.
Voeg deze code toe aan het einde van de Main-methode:
Console.WriteLine("\nPeek at the messages in the queue...");
// Peek at messages in the queue
PeekedMessage[] peekedMessages = await queueClient.PeekMessagesAsync(maxMessages: 10);
foreach (PeekedMessage peekedMessage in peekedMessages)
{
// Display the message
Console.WriteLine($"Message: {peekedMessage.MessageText}");
}
Een bericht in een wachtrij bijwerken
Werk de inhoud van een bericht bij door de methode UpdateMessageAsync aan te roepen. Deze methode kan de time-out voor zichtbaarheid en de inhoud van een bericht wijzigen. De inhoud van het bericht moet een UTF-8-gecodeerde tekenreeks zijn die maximaal 64 KB groot is. Geef behalve de nieuwe inhoud voor het bericht ook de waarden uit de SendReceipt door die eerder in de code waren opgeslagen. De SendReceipt-waarden identificeren welk bericht moet worden bijgewerkt.
Console.WriteLine("\nUpdating the third message in the queue...");
// Update a message using the saved receipt from sending the message
await queueClient.UpdateMessageAsync(receipt.MessageId, receipt.PopReceipt, "Third message has been updated");
Berichten van een wachtrij ontvangen
Download eerder toegevoegde berichten door de methode ReceiveMessagesAsync aan te roepen.
Voeg deze code toe aan het einde van de Main-methode:
Console.WriteLine("\nReceiving messages from the queue...");
// Get messages from the queue
QueueMessage[] messages = await queueClient.ReceiveMessagesAsync(maxMessages: 10);
Berichten uit een wachtrij verwijderen
Verwijder berichten uit de wachtrij nadat ze zijn verwerkt. In dit geval betekent ‘verwerken’ gewoon dat het bericht wordt weergegeven in de console.
De app pauzeert voor gebruikersinvoer door Console.ReadLine aan te roepen voordat deze de berichten verwerkt en verwijdert. Verifieer in uw Azure-portal dat de resources correct zijn gemaakt, voordat ze worden verwijderd. Berichten die niet expliciet worden verwijderd, worden uiteindelijk weer zichtbaar in de wachtrij, zodat u nog een kans hebt om ze te verwerken.
Voeg deze code toe aan het einde van de Main-methode:
Console.WriteLine("\nPress Enter key to 'process' messages and delete them from the queue...");
Console.ReadLine();
// Process and delete messages from the queue
foreach (QueueMessage message in messages)
{
// "Process" the message
Console.WriteLine($"Message: {message.MessageText}");
// Let the service know we're finished with
// the message and it can be safely deleted.
await queueClient.DeleteMessageAsync(message.MessageId, message.PopReceipt);
}
Een wachtrij verwijderen
Met de volgende code worden de resources opgeschoond die met de app zijn gemaakt, door de wachtrij te verwijderen met de methode DeleteAsync.
Voeg deze code toe aan het einde van de Main-methode:
Console.WriteLine("\nPress Enter key to delete the queue...");
Console.ReadLine();
// Clean up
Console.WriteLine($"Deleting queue: {queueClient.Name}");
await queueClient.DeleteAsync();
Console.WriteLine("Done");
De code uitvoeren
Met deze app worden drie berichten gemaakt en aan een Azure-wachtrij toegevoegd. De code toont de berichten in de wachtrij, haalt ze op en verwijdert ze, en verwijdert uiteindelijk de wachtrij.
Navigeer in uw consolevenster naar de toepassingsmap, bouw de toepassing en voer deze uit.
dotnet build
dotnet run
De uitvoer van de app lijkt op die in het volgende voorbeeld:
Azure Queue Storage client library v12 - .NET quickstart sample
Creating queue: quickstartqueues-5c72da2c-30cc-4f09-b05c-a95d9da52af2
Adding messages to the queue...
Peek at the messages in the queue...
Message: First message
Message: Second message
Message: Third message
Updating the third message in the queue...
Receiving messages from the queue...
Press Enter key to 'process' messages and delete them from the queue...
Message: First message
Message: Second message
Message: Third message has been updated
Press Enter key to delete the queue...
Deleting queue: quickstartqueues-5c72da2c-30cc-4f09-b05c-a95d9da52af2
Done
Wanneer de app pauzeert voordat deze berichten ontvangt, controleert u uw opslagaccount in de Azure-portal. Verifieer dat de berichten in de wachtrij staan.
Druk op de Enter-toets om de berichten te ontvangen en verwijderen. Druk nogmaals op de Enter-toets wanneer u daarom wordt gevraagd, om de wachtrij te verwijderen en de demo te voltooien.
Volgende stappen
In deze quickstart hebt u geleerd hoe u een wachtrij maakt en berichten eraan toevoegt met behulp van asynchrone .NET-code. Vervolgens leerde u hoe u berichten kunt bekijken, ophalen en verwijderen. Tot slot leerde u hoe u een berichtenwachtrij verwijdert.
Voor zelfstudies, voorbeelden, quickstarts en andere documentatie gaat u naar:
- Zie de Azure Storage-bibliotheken voor .NET voor meer informatie.
- Raadpleeg Azure Queue Storage-clientbibliotheek voor .NET - voorbeelden voor meer Azure Queue Storage-voorbeeld-apps.
- Zie voor meer informatie over .NET Core Aan de slag met .NET in 10 minuten.