CloudBlob.FetchAttributes Method (BlobRequestOptions)
From Storage Client Library NET API
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# | |
|---|---|
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.