C#Azure存储Blob上载TransactionScope

Jul*_*n50 5 c# transactionscope azure-storage

是否有某个类允许在天蓝色的blockblob操作上使用transactionscope回滚?

我想让这个工作:

  CloudBlockBlob blockBlob;

    private void UploadPicture(Stream iStream)
    {
        using(var ts = new TransactionScope())
        {
            blockBlob.UploadFromStream(iStream);

            throw new Exception();
            ts.Complete();
        }
    }
Run Code Online (Sandbox Code Playgroud)

引发异常时,不会取消上载的文件.如果交易范围不可行,我该怎么办?

Ser*_*ler 1

Azure 存储客户端库不提供此支持。但是,如果您的方案可以接受取消支持,则可以将UploadFromStreamAsync API 与CancellationToken结合使用。当异步上传 blob 时,您可以取消该操作。根据操作的当前进度,它将尝试中止上传。