CloudBlob.FetchAttributes Method (BlobRequestOptions)

Storage Client Library NET API

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

Populates a blob's properties and metadata, using a conditional request based on the BlobRequestOptions that you specify.

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

Usage

Visual Basic
Dim instance As CloudBlob
Dim options As BlobRequestOptions

instance.FetchAttributes(options)

Syntax

Visual Basic
Public Sub FetchAttributes ( _
	options As BlobRequestOptions _
)
C#
public void FetchAttributes (
	BlobRequestOptions options
)
C++
public:
void FetchAttributes (
	BlobRequestOptions^ options
)
J#
JScript

Parameters

options

Type: Microsoft.WindowsAzure.StorageClient.BlobRequestOptions

An object that specifies any additional options for the request.

Example

The following code example lists blob properties and metadata—and specifies a 20 second timeout on the operation.

C# Copy Code
static void ListBlobPropertiesAndMetadata2(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.
    CloudBlob blob = blobClient.GetBlobReference("mycontainer/myblob.txt");

    // Set options for the request. E.g., Specify an operation timeout of 20 seconds.
    BlobRequestOptions options = new BlobRequestOptions();

    options.Timeout = TimeSpan.FromSeconds(20.0);

    // Populate the blob's attributes.
    blob.FetchAttributes(options);

    // List some blob properties.
    Console.WriteLine("Blob: " + blob.Attributes.Uri);
    Console.WriteLine();

    Console.WriteLine("Blob properties:");
    Console.WriteLine("\tBlobType: " + blob.Attributes.Properties.BlobType);
    Console.WriteLine("\tLastModifiedUTC: " + blob.Attributes.Properties.LastModifiedUtc);
    Console.WriteLine("\tETag: " + blob.Attributes.Properties.ETag);
    Console.WriteLine();

    // Enumerate the blob's metadata.
    foreach (var metadataKey in blob.Metadata.Keys)
    {
        Console.WriteLine("Metadata name: " + metadataKey.ToString());
        Console.WriteLine("Metadata value: " + blob.Metadata.Get(metadataKey.ToString()));
    }
}

Remarks

The FetchAttributes method populates the blob's system properties and user-defined metadata. Before reading a blob's properties or metadata, you should always call this method or the BeginFetchAttributes method to retrieve the latest values for the blob's properties and metadata from the service.

In the event of an error, this method will raise a StorageClientException.


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.

Platforms

Development Platforms

Windows Vista, Windows 7, Windows Server 2008, Windows 8.1, Windows Server 2012 R2, Windows 8 and Windows Server 2012

Change History

See Also