3

我想将目录中的所有文件/文件夹上传到 S3 存储桶。我想上传包括所有子目录中的所有文件。我想使用 TransferUtility 来做到这一点。尽管此处的链接显示“默认情况下,Amazon S3 仅将文件上传到指定目录的根目录。但是,您可以指定以递归方式上传所有子目录中的文件。但我找不到办法做到这一点。我找不到任何可以提及的属性来包含所有子目录。我尝试使用SearchOption = System.IO.SearchOption.AllDirectoriesandSearchPattern = "*"来实现这一点,但它仍然只上传了最顶层目录中的文件。请帮助我。谢谢。

我正在使用下面的代码,

TransferUtility directoryTransferUtility = new TransferUtility(s3Client);

                TransferUtilityUploadDirectoryRequest uRequest = new TransferUtilityUploadDirectoryRequest()
                {
                    Directory = dirPath,
                    BucketName = bucketName,
                    SearchOption = System.IO.SearchOption.AllDirectories,
                    SearchPattern = "*"
                };

                directoryTransferUtility.UploadDirectory(dirPath, bucketName);
4

1 回答 1

2

这对我有用:我在UploadDirectory方法上设置选项并用作"*.*"搜索模式。

    directoryTransferUtility.UploadDirectory(dirPath, 
                                             bucketName,
                                             "*.*",
                                             SearchOption.AllDirectories);
于 2016-05-15T15:17:56.920 回答