Export (0) Print
Expand All

CloudBlobDirectory.EndListBlobsSegmented Method

Updated: April 24, 2013

[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.]

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
Dim instance As CloudBlobDirectory
Dim asyncResult As IAsyncResult
Dim returnValue As ResultSegment(Of IListBlobItem)

returnValue = instance.EndListBlobsSegmented(asyncResult)

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, Windows Server 2008, Windows 8.1, Windows Server 2012 R2, Windows 8 and Windows Server 2012

 

Show:
© 2014 Microsoft