Lista blobcontainrar med .NET
När du listar containrarna i ett Azure Storage-konto från koden kan du ange ett antal alternativ för att hantera hur resultatet returneras från Azure Storage. Den här artikeln visar hur du listar containrar med hjälp av Azure Storage-klientbiblioteket för .NET.
Förutsättningar
- Den här artikeln förutsätter att du redan har ett projekt konfigurerat för att fungera med Azure Blob Storage-klientbiblioteket för .NET. Mer information om hur du konfigurerar projektet, inklusive paketinstallation, tillägg
using
av direktiv och skapande av ett auktoriserat klientobjekt finns i Kom igång med Azure Blob Storage och .NET. - Auktoriseringsmekanismen måste ha behörighet att lista blobcontainrar. Mer information finns i auktoriseringsvägledningen för följande REST API-åtgärd:
Om alternativ för containerlistning
När du listar containrar från koden kan du ange alternativ för att hantera hur resultatet returneras från Azure Storage. Du kan ange hur många resultat som ska returneras i varje resultatuppsättning och sedan hämta efterföljande uppsättningar. Du kan också filtrera resultatet efter ett prefix och returnera containermetadata med resultatet. De här alternativen beskrivs i följande avsnitt.
Om du vill visa containrar i ditt lagringskonto anropar du någon av följande metoder:
Dessa metoder returnerar en lista över BlobContainerItem-objekt . Containrar beställs lexicographically efter namn.
Hantera hur många resultat som returneras
Som standard returnerar en liståtgärd upp till 5 000 resultat åt gången, men du kan ange antalet resultat som du vill att varje listningsåtgärd ska returnera. Exemplen som presenteras i den här artikeln visar hur du returnerar resultat på sidor. Mer information om sidnumreringsbegrepp finns i Sidnumrering med Azure SDK för .NET.
Filtrera resultat med ett prefix
Om du vill filtrera listan över containrar anger du en sträng för parametern prefix
. Prefixsträngen kan innehålla ett eller flera tecken. Azure Storage returnerar sedan endast de containrar vars namn börjar med prefixet.
Inkludera containermetadata
Om du vill inkludera containermetadata med resultatet anger du Metadata
värdet för BlobContainerTraits-uppräkningen . Azure Storage innehåller metadata för varje container som returneras, så du behöver inte hämta containermetadata separat.
Inkludera borttagna containrar
Om du vill inkludera mjuk borttagna containrar med resultatet anger du Deleted
värdet för BlobContainerStates-uppräkningen .
Kodexempel: Lista containrar
I följande exempel visas asynkront containrarna i ett lagringskonto som börjar med ett angivet prefix. I exemplet visas containrar som börjar med det angivna prefixet och returnerar det angivna antalet resultat per anrop till liståtgärden. Den använder sedan fortsättningstoken för att hämta nästa resultatsegment. Exemplet returnerar även containermetadata med resultatet.
async static Task ListContainers(BlobServiceClient blobServiceClient,
string prefix,
int? segmentSize)
{
try
{
// Call the listing operation and enumerate the result segment.
var resultSegment =
blobServiceClient.GetBlobContainersAsync(BlobContainerTraits.Metadata, prefix, default)
.AsPages(default, segmentSize);
await foreach (Azure.Page<BlobContainerItem> containerPage in resultSegment)
{
foreach (BlobContainerItem containerItem in containerPage.Values)
{
Console.WriteLine("Container name: {0}", containerItem.Name);
}
Console.WriteLine();
}
}
catch (RequestFailedException e)
{
Console.WriteLine(e.Message);
Console.ReadLine();
throw;
}
}
Resurser
Mer information om hur du listar containrar med hjälp av Azure Blob Storage-klientbiblioteket för .NET finns i följande resurser.
REST API-åtgärder
Azure SDK för .NET innehåller bibliotek som bygger på Azure REST API, så att du kan interagera med REST API-åtgärder via välbekanta .NET-paradigm. Klientbiblioteksmetoderna för att visa containrar använder följande REST API-åtgärd:
- Listcontainrar (REST API)