Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void UploadFile(string filename, string bucket, string key)
- {
- var config = new TransferUtilityConfig();
- var utility = new TransferUtility(this.s3Client, config);
- using (var temporaryFile = new TemporaryFile())
- using (var temporaryFileStream = File.Open(temporaryFile.FullPath, FileMode.CreateNew, FileAccess.ReadWrite))
- {
- using (var fileStream = File.OpenRead(filename))
- using (var compressedStream = new GZipStream(temporaryFileStream, CompressionMode.Compress, true))
- {
- fileStream.CopyTo(compressedStream);
- }
- temporaryFileStream.Position = 0;
- var request = new TransferUtilityUploadRequest
- {
- AutoCloseStream = false,
- Timeout = -1,
- BucketName = bucket,
- Key = key,
- InputStream = temporaryFileStream,
- PartSize = 204800 // 2MB
- };
- request.WithStorageClass(S3StorageClass.Standard);
- request.UploadProgressEvent += (sender, args) => Console.Write(".");
- utility.Upload(request);
- Console.WriteLine("Done.");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment