Azure块BLOB ETag为null

时间:2016-11-21 15:39:58

标签: azure-storage-blobs

我在Azure中有一个BLOB容器,我已经保存了一些块BLOB。下面的代码是一个读取特定BLOB的方法,我会在一个变量中保存BLOB ETag,但它总是返回null。

public static string DownloadAsText(string ContainerName, string BlobName, out string ETag)
{
    CloudBlobContainer BlobContainer = CreateCloudBlobClient().GetContainerReference(ContainerName);
    CloudBlockBlob Blob = BlobContainer.GetBlockBlobReference(BlobName);
    ETag = Blob.Properties.ETag;
    return Blob.DownloadText();
}

1 个答案:

答案 0 :(得分:1)

据我所知,CloudBlockBlob.GetBlockBlobReference只返回客户端容器内块blob的引用。为了检索Blob的属性,您需要明确地向服务器端发送请求。

此外,ETag用于管理Blob服务中的并发性。它是blob(文件)的标识符,每次在blob(文件)上执行更新操作时都会更新。有关详细信息,您可以按照此官方tutorial更好地了解ETag并充分利用它。