2

ここに記載されているコンソールアプリケーションの変換に問題があります。 Copying an existing blob into a media services assetAzure Storage Copy from Blob

私が賢明のような賢明referncesやコードのようにすべてを持っていますが、モバイルアプリのサービス上で実行するには、次の問題に持って

// Display the size of the source blob. 
Console.WriteLine(sourceBlob.Properties.Length); 
Console.WriteLine(string.Format("Copy blob '{0}' to '{1}'", sourceBlob.Uri, destinationBlob.Uri)); 

// The line below gives the following error: 
destinationBlob.StartCopyFromBlob(new Uri(sourceBlob.Uri.AbsoluteUri + signature)); 

BLOCKQUOTE 「ICloudBlob」「StartCopyFromBlob」の定義が含まれていません。 'ICloudBlob'型の最初の引数を受け入れる拡張メソッド 'StartCopyFromBlob'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?)

これは、ストレージクライアントのバージョン7を使用していて、メソッドが削除されたためですか?

同様の結果を得るために使用できるメソッドの組み合わせの新しい方法がある場合は、 release notesから

答えて

3

、あなたが見つけることができます:

ブロブ:削除(開始/終了)(開始/終了)StartCopy(非同期)のAPIを使用しての賛成でStartCopyFromBlob(非同期)のAPIは非推奨。

したがって、StartCopyFromBlobの代わりにStartCopyを使用してください。

+0

しかしStartcopyというメソッドを持っていない私のcloudblobインタフェース:

は、その後、次のコードを実行することができます。 https://msdn.microsoft.com/library/azure/microsoft.windowsazure.storage.blob.icloudblob.aspx –

+1

ICloudBlobインターフェイスに存在せず、CloudBlob基底クラスに存在します。 –

1

Zhaoxing Luは「ICloudBlob」には「StartCopy」の定義が含まれていないと述べています。あなたのコードに基づいて、あなたはCloudBlockBlobクラスで 'StartCopy'を見つけることができます。代わりの

CloudBlockBlob destinationBlob = destinationContainer.GetBlockBlobReference(sourceBlob.Name); 

ICloudBlob destinationBlob = destinationContainer.GetBlockBlobReference(sourceBlob.Name); 

注:CloudBlockBlobオブジェクトを返しますCloudBlobContainer.GetBlockBlobReference

はあなたが言及したチュートリアルによると、あなたはdestinationBlobの種類を変更することができます。

destinationBlob.StartCopy(new Uri(sourceBlob.Uri.AbsoluteUri + signature)); 
関連する問題