Je suis à la recherche d'un meilleur moyen de supprimer un seau S3.
AWS SDK pour .Net ne permet pas de supprimer un compartiment non vide et
n'a aucun DeleteBucket()
surchargé pour supprimer des objets enfants dans le compartiment.Supprimer un seau dans S3
C'est la façon dont je suis actuellement un seau Suppression -
- récupérer tous les objets dans le seau
- Supprimer les objets
- seau Supprimer
// Supprimer tous les objets du seau d'abord - un seau non vide ne peut pas être supprimé
using (ListObjectsResponse response = amazonS3Client.ListObjects(new ListObjectsRequest().WithBucketName(bucket.Name)))
{
if (response.S3Objects.Count > 0)
{
List<KeyVersion> keys = response.S3Objects.Select(obj => new KeyVersion(obj.Key)).ToList();
DeleteObjectsRequest deleteObjectsRequest = new DeleteObjectsRequest
{
BucketName = bucket.Name,
Keys = keys
};
amazonS3Client.DeleteObjects(deleteObjectsRequest);
}
}
//Delete Bucket
DeleteBucketRequest request = new DeleteBucketRequest
{
BucketName = bucket.Name
};
amazonS3Client.DeleteBucket(request);
Est-il une meilleure façon de supprimer un compartiment dans S3 - où je n'ai pas besoin d'aller chercher les objets en premier.
Existe-t-il une méthode qui me manque dans AWS SDK pour .Net?
Merci!