使用asp.net删除亚马逊s3上的文件

时间:2021-01-20 09:42:09

标签: c# asp.net amazon-s3 delete-file

我有一个 asp 按钮,当点击按钮时,我想删除我在 s3 上的文件

但是当我单击删除按钮时,它只是加载。 我的 Web 应用程序只是不停地加载。

原因是什么?

我该如何解决?

我的代码:

public static IAmazonS3 s3Client;
public static readonly RegionEndpoint bucketRegion = RegionEndpoint.APSoutheast1;
public static string bucketName = "myBucket";
public string s3DirectoryName = "myDirectory";

protected void btnDelete_Click(object sender, EventArgs e)
    {
        s3Client = new AmazonS3Client(bucketRegion);
        string filename = s3DirectoryName + "tes_folder" + "/" + "tes_file.pdf";
        DeleteObjectNonVersionedBucketAsync(filename).Wait();
    }

    private static async Task DeleteObjectNonVersionedBucketAsync(string filename)
    {
        try
        {
            var deleteObjectRequest = new DeleteObjectRequest
            {
                BucketName = bucketName,
                Key = filename
            };

            Console.WriteLine("Deleting an object");
            await s3Client.DeleteObjectAsync(deleteObjectRequest);
        }
        catch (AmazonS3Exception e)
        {
            Console.WriteLine("Error encountered on server. Message:'{0}' when deleting an object", e.Message);
        }
        catch (Exception e)
        {
            Console.WriteLine("Unknown encountered on server. Message:'{0}' when deleting an object", e.Message);
        }
    }

我还添加了回发

<Triggers>
        <asp:PostBackTrigger ControlID="btnDelete"/>
</Triggers>

1 个答案:

答案 0 :(得分:0)

{{1}}

哪个是 myDirectorytes_folder/tes_file.pdf

在tes_folder前加“/”