[This topic is part of the Microsoft Azure Storage Client Library 1.7, which has been deprecated. See Storage Client Library for the latest version.]
Returns an enumerable, lazily retrieved collection of containers whose names begin with the specified prefix, and optionally returns container metadata. Namespace: Microsoft.WindowsAzure.StorageClient
Assembly: Microsoft.WindowsAzure.StorageClient (in Microsoft.WindowsAzure.StorageClient.dll)
Returns an enumerable, lazily retrieved collection of containers whose names begin with the specified prefix, and optionally returns container metadata. Namespace: Microsoft.WindowsAzure.StorageClient
Assembly: Microsoft.WindowsAzure.StorageClient (in Microsoft.WindowsAzure.StorageClient.dll)
Usage
Visual Basic |
---|
Dim instance As CloudBlobClient Dim prefix As String Dim detailsIncluded As ContainerListingDetails Dim returnValue As IEnumerable(Of CloudBlobContainer) returnValue = instance.ListContainers(prefix, detailsIncluded) |
Syntax
Visual Basic |
---|
Public Function ListContainers ( _ prefix As String, _ detailsIncluded As ContainerListingDetails _ ) As IEnumerable(Of CloudBlobContainer) |
C# |
---|
public IEnumerable<CloudBlobContainer> ListContainers ( string prefix, ContainerListingDetails detailsIncluded ) |
C++ |
---|
public: IEnumerable<CloudBlobContainer^>^ ListContainers ( String^ prefix, ContainerListingDetails detailsIncluded ) |
J# |
---|
JScript |
---|
Parameters
- prefix
Type: System.String
The container name prefix.
- detailsIncluded
Type: Microsoft.WindowsAzure.StorageClient.ContainerListingDetails
A value that indicates whether to return container metadata with the listing.
Return Value
Type: System.Collections.Generic.IEnumerable An enumerable collection of containers that are retrieved lazily.Example
The following code example demonstrates a few different options for listing containers in a storage account.
C# | Copy Code |
---|---|
static void ListContainersInAccount(Uri blobEndpoint, string accountName, string accountKey) { //Create service client for credentialed access to the Blob service. CloudBlobClient blobClient = new CloudBlobClient(blobEndpoint, new StorageCredentialsAccountAndKey(accountName, accountKey)); //List all containers in this storage account. foreach (var container in blobClient.ListContainers()) { Console.WriteLine("Container:" + container.Name); } Console.WriteLine(); //List containers in this storage account whose names begin with the prefix "my". foreach (var container in blobClient.ListContainers("my")) { Console.WriteLine("Container:" + container.Name); } Console.WriteLine(); //List containers in this storage account whose names begin with the prefix "my", //and return container metadata. //Note that requesting the container's metadata as part of the listing operation //populates the metadata, so it's not necessary to call FetchAttributes(). foreach (var container in blobClient.ListContainers("my", ContainerListingDetails.Metadata)) { Console.WriteLine("Container:" + container.Name); //Write out the container's metadata values. Console.WriteLine("Container metadata:"); foreach (var metadataKey in container.Metadata.Keys) { Console.WriteLine("\tMetadata key: " + metadataKey.ToString()); Console.WriteLine("\tMetadata value: " + container.Metadata.Get(metadataKey.ToString())); } } } |
Remarks
This method lists all containers in the storage account whose names begin with the specified prefix, and optionally returns container metadata. To return container metadata with the listing, set the detailsIncluded parameter to Metadata. To enumerate containers without metadata, set the detailsIncluded parameter to None.
Note |
---|
If you specify that the listing should include container metadata, each container's metadata will be populated; it's not necessary to fetch the container's attributes to populate the metadata. |
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.