使用 C# 获取 S3 存储桶中最近的文件

问题描述 投票:0回答:2

我在工作中有一个用例,需要一种方法来查找最新的数字签名证书。有没有办法使用 C# .NET CORE 5.0 中的 AWS.SDK 从 S3 存储桶中获取最后修改的文件/对象?

c# asp.net asp.net-core amazon-s3 aws-sdk
2个回答
1
投票

没有。

您将需要检索所有对象,然后使用 C# 程序中的代码来查找具有最新

LastModifiedDate
的返回对象。


0
投票

ListObjects 最多返回 1000 个文件,因此要在所有情况下提取最新文件,您应该使用结果分页:

var request = new ListObjectsV2Request {
    BucketName = bucketName,
};

var allObjects = new List<S3Object>();

ListObjectsV2Response response;
do {
    response = await _s3Client.ListObjectsV2Async(request);
    allObjects.AddRange(response.S3Objects);
    request.ContinuationToken = response.NextContinuationToken;
} while (response.IsTruncated);

var latestFile = allObjects.OrderByDescending(o => o.LastModified).FirstOrDefault();
© www.soinside.com 2019 - 2024. All rights reserved.