StartCopyFromBlob无法使用Azure

时间:2013-11-26 10:31:34

标签: c# azure azure-storage

我有Azure Storage SDK 2.0(内部包括存储客户端库1.7.0)。我正在使用以下方法将blob从S复制到T.

var blockBlob = blobContainer.GetBlockBlobReference(azureBlobName);

blockBlob.StartCopyFromBlob(new Uri(amazonObjectUrl), null, null, null);

但是我得到了以下错误:

Error   2   'Microsoft.WindowsAzure.StorageClient.CloudBlob' does not contain 
a definition for 'CopyState' and no extension method 'CopyState' accepting a first argument
of type 'Microsoft.WindowsAzure.StorageClient.CloudBlob' could be found (are you missing a 
using directive or an assembly reference?)  

你能帮帮我吗?

1 个答案:

答案 0 :(得分:0)

你应该做的是摆脱旧图书馆的所有参考。所以你的代码不应该对Microsoft.WindowsAzure.StorageClient命名空间有任何引用。相反,您的代码应该使用Microsoft.WindowsAzure.StorageMicrosoft.WindowsAzure.Storage.AuthMicrosoft.WindowsAzure.Storage.Blob名称空间,这些名称空间是2.0版本库的一部分。

如果这是一个全新的项目,那么你应该没问题。但是,如果它是一个你正在尝试升级的旧项目,那么2.0版本的库中会有一些变化会破坏使用1.7版本的代码。如果您要从1.7迁移到2.0,可能会发现此博客文章很有用:http://gauravmantri.com/2012/11/28/storage-client-library-2-0-migrating-blob-storage-code/