C#Azure存储Blob上载TransactionScope

时间:2015-04-01 15:08:53

标签: c# azure-storage transactionscope

是否有某个类允许使用transactioncope回滚azure blockblob操作?

我想让它成功:

  CloudBlockBlob blockBlob;

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

            throw new Exception();
            ts.Complete();
        }
    }

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

1 个答案:

答案 0 :(得分:1)

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