如何在.Net S3 SDK中按名称获取存储桶?

时间:2010-04-28 02:00:31

标签: c# .net amazon-s3

我正在尝试使用适用于.Net的Amazon S3 SDK找到一个方法来获取其名称的存储桶。我只能找到ListAllBuckets(),但我真的不想这样做,然后尝试从响应中找到它。

2 个答案:

答案 0 :(得分:1)

使用ListObjects()方法

using (AmazonS3 client = Amazon.AWSClientFactory.CreateAmazonS3Client(AWSKey, AWSSecretKey)) {

    object req = new Model.ListObjectsRequest { BucketName = "MyBucket" };
    object resp = client.ListObjects(req);

}

答案 1 :(得分:0)

这对我有用:

public static S3Bucket GetS3Bucket(string bucket)
{
    try
    {
        AmazonS3 client = Amazon.AWSClientFactory.CreateAmazonS3Client(accessKeyID, secretAccessKeyID);
        return client.ListBuckets().Buckets.Where(b => b.BucketName == bucket).Single();
    }
    catch (AmazonS3Exception amazonS3Exception)
    {
        throw amazonS3Exception;
    }
}