Export (0) Print
Expand All

CloudBlobDirectory.EndListBlobsSegmented Method

Updated: April 24, 2013

[This topic is part of the Windows Azure Storage Client Library 1.7, which has been deprecated. The current recommended version is Storage Client Library 3.0.]

Ends an asynchronous request to return a result segment containing a collection of blob items.

Namespace: Microsoft.WindowsAzure.StorageClient
Assembly: Microsoft.WindowsAzure.StorageClient (in Microsoft.WindowsAzure.StorageClient.dll)

'Usage

public ResultSegment<IListBlobItem> EndListBlobsSegmented (
	IAsyncResult asyncResult
)

Parameters

asyncResult

An IAsyncResult that references the pending asynchronous operation.

Return Value

A result segment containing objects that implement IListBlobItem.

The following code example lists the blobs in a blob directory in segments, using the default hierarchical listing.

static void ListBlobsInDirectoryAsynchronously(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));

    //Get a reference to a blob directory.
    CloudBlobDirectory blobDir = blobClient.GetBlobDirectoryReference("myvirtualdir/a/");

    //Begin the operation to return the first segment of blobs, passing the service client to the callback.
    blobDir.BeginListBlobsSegmented(ListBlobsInDirectoryCallback, blobDir);
}

static void ListBlobsInDirectoryCallback(IAsyncResult result)
{
    CloudBlobDirectory blobDir = (CloudBlobDirectory)result.AsyncState;
    //End the operation.
    ResultSegment<IListBlobItem> resultSegment = blobDir.EndListBlobsSegmented(result);

    //Enumerate the blob items.
    foreach (var blobItem in resultSegment.Results)
    {
        Console.WriteLine(blobItem.Uri);
    }

    //Check the continuation token to determine whether there are more results.
    if (resultSegment.ContinuationToken != null)
    {
        //Get the next result segment, returning up to 1000 blobs per operation.
        blobDir.BeginListBlobsSegmented(1000, resultSegment.ContinuationToken, new BlobRequestOptions(), ListBlobsInSegmentsCallback, blobDir);
    }
}


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Development Platforms

Windows Vista, Windows 7 and Windows Server 2008

Target Platforms

Show:
© 2014 Microsoft