BlobAttributes.Metadata Property

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

Gets the user-defined metadata for the blob.

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

Usage

Visual Basic
Dim instance As BlobAttributes
Dim value As NameValueCollection

value = instance.Metadata

Syntax

Visual Basic
Public Property Metadata As NameValueCollection
C#
public NameValueCollection Metadata { get; }
C++
public:
property NameValueCollection^ Metadata {
	NameValueCollection^ get ();
}
J#
JScript

Property Value

The blob's metadata, as a collection of name-value pairs.

Example

The following code example lists blob properties and metadata.

 Copy Code
static void ListBlobPropertiesAndMetadata(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");

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

    //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

Returning a reference to a blob does not automatically provide access to the blob's metadata. To populate a blob's metadata, call the FetchAttributes method or the BeginFetchAttributes and EndFetchAttributes methods. Calling these methods before reading a blob's metadata will ensure that the metadata values are up-to-date.


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