Amazon Simple Storage Service
开发人员指南 (API 版本 2006-03-01)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

使用适用于 .NET 的 AWS 开发工具包 (高级别 API) 中止到 S3 存储桶的分段上传

要中止正在进行的分段上传,请使用适用于 .NET 的 AWS 开发工具包中的 TransferUtility 类。您提供一个 DateTime 值。然后,API 将中止所有在指定日期和时间前启动的分段上传并删除已上传的段。启动上传后,上传将被视作正在进行,直到它完成或您中止它。

由于您需要为与已上传的段相关的所有存储支付费用,因此,完成分段上传以完成创建对象,或者中止分段上传以删除已上传的分段非常重要。有关 Amazon S3 分段上传的更多信息,请参阅分段上传概述。有关定价的信息,请参阅 分段上传和定价

以下 C# 示例将中止一周前在特定存储桶上启动的正在进行的所有分段上传。有关示例与特定版本的适用于 .NET 的 AWS 开发工具包的兼容性的信息以及有关创建和测试有效示例的说明,请参阅运行 Amazon S3 .NET 代码示例

using Amazon.S3; using Amazon.S3.Transfer; using System; using System.Threading.Tasks; namespace Amazon.DocSamples.S3 { class AbortMPUUsingHighLevelAPITest { private const string bucketName = "*** provide bucket name ***"; // Specify your bucket region (an example region is shown). private static readonly RegionEndpoint bucketRegion = RegionEndpoint.USWest2; private static IAmazonS3 s3Client; public static void Main() { s3Client = new AmazonS3Client(bucketRegion); AbortMPUAsync().Wait(); } private static async Task AbortMPUAsync() { try { var transferUtility = new TransferUtility(s3Client); // Abort all in-progress uploads initiated before the specified date. await transferUtility.AbortMultipartUploadsAsync( bucketName, DateTime.Now.AddDays(-7)); } catch (AmazonS3Exception e) { Console.WriteLine("Error encountered on server. Message:'{0}' when writing an object", e.Message); } catch (Exception e) { Console.WriteLine("Unknown encountered on server. Message:'{0}' when writing an object", e.Message); } } } }

注意

您也可以中止特定的分段上传。有关更多信息,请参阅 使用适用于 .NET 的 AWS 开发工具包 (低级别) 列出到 S3 存储桶的分段上传

更多信息

适用于 .NET 的 AWS 开发工具包

本页内容: