我有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?)
你能帮帮我吗?
答案 0 :(得分:0)
你应该做的是摆脱旧图书馆的所有参考。所以你的代码不应该对Microsoft.WindowsAzure.StorageClient
命名空间有任何引用。相反,您的代码应该使用Microsoft.WindowsAzure.Storage
,Microsoft.WindowsAzure.Storage.Auth
和Microsoft.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/