3

このコードを使用して、あるアカウントから別のアカウントに BLOB をコピーしていますが、例外がスローされます。

var srcAccount = CloudStorageAccount.Parse("connection string 1");
var dstAccount = CloudStorageAccount.Parse("connection string 2");

var srcBlobClient = srcAccount.CreateCloudBlobClient();
var dstBlobClient = dstAccount.CreateCloudBlobClient();

foreach (var srcCloudBlobContainer in srcBlobClient.ListContainers())
{
    var dstCloudBlobContainer = dstBlobClient
        .GetContainerReference(srcCloudBlobContainer.Name);

    dstCloudBlobContainer.CreateIfNotExists();

    foreach (var srcBlob in srcCloudBlobContainer.ListBlobs())
    {
        if (srcBlob.GetType() == typeof(CloudBlockBlob))
        {
            var srcBlockBlock = (CloudBlockBlob)srcBlob;
            var dstBlockBlock = dstCloudBlobContainer
                .GetBlockBlobReference(srcBlockBlock.Name);

            // throws exception StorageException:
            // The remote server returned an error: (404) Not Found.
            dstBlockBlock.StartCopyFromBlob(srcBlockBlock.Uri);
        }
    }
}

Microsoft は、クロス アカウント コピーがサポートされていると述べていますが、動作させることができません。

私は何を間違っていますか?

4

1 に答える 1