【发布时间】:2012-10-23 13:08:14
【问题描述】:
几个小时以来,我一直在尝试在我使用 Azure SDK 创建的 blob 上设置一些元数据。我使用BeginUploadFromStream() 异步上传数据,一切顺利。上传完成后,我可以使用其 URI 访问 blob,因此它已成功创建,但是 我设置的任何元数据都不会持久化。
我在调用EndUploadFromStream()之后设置了元数据。
我尝试过通过documentation 找到的三种方式设置元数据:
// First attempt
myBlob.Metadata["foo"] = "bar";
// Second attempt
myBlob.Metadata.Add("foo", "bar");
//Third attempt
var metadata = new NameValueCollection();
metadata["foo"] = "bar";
blob.Metadata.Add(metadata);
在设置元数据后,我调用myBlob.SetMetadata() 将元数据保存到 Azure,如文档中所指定,但它不会粘住。该调用不会引发任何异常,但是当我获得对我的 blob 的新引用时,它没有任何元数据。
我也尝试过使用 BeginSetMetadata() 和 EndSetMetadata() 异步保存元数据,但结果相似。
我开始觉得我在这里遗漏了一些非常琐碎的东西,但是盯着它看了五个小时后,我还是不明白我哪里错了?
【问题讨论】:
标签: c# asp.net azure azure-blob-storage azure-sdk-.net