Click here to Skip to main content
15,881,882 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello,

I am uploading file to Amazon cloud storage using WCF Rest service. The service receives Stream as a input and this stream is being passed to CloudUpload API. Below is my code.

public void UploadFileWithStream(Stream FileStream)
        {
           
            try
            {
                
                TransferUtility fileTransferUtility = new
                      TransferUtility(new AmazonS3Client("access key", "secret access key", Amazon.RegionEndpoint.USEast1));

                TransferUtilityUploadRequest fileTransferUtilityRequest = new TransferUtilityUploadRequest
                {
                    BucketName = "bucketNM",
                    InputStream = FileStream,
                    StorageClass = S3StorageClass.Standard,
                    PartSize = 6291456,
                    Key = @"Trial/filenm.jpg",
                    CannedACL = S3CannedACL.BucketOwnerFullControl
                };

                fileTransferUtility.Upload(fileTransferUtilityRequest);

            }
            catch (Exception ex)
            {
               
            }

        }



I am getting the following error in this method.

Specified method is not supported. at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.get_Length()
at Amazon.S3.Transfer.TransferUtilityUploadRequest.get_ContentLength()
at Amazon.S3.Transfer.TransferUtility.IsMultipartUpload(TransferUtilityUploadRequest request)
at Amazon.S3.Transfer.TransferUtility.GetUploadCommand(TransferUtilityUploadRequest request)
at Amazon.S3.Transfer.TransferUtility.UploadHelper(TransferUtilityUploadRequest request)
at Amazon.S3.Transfer.TransferUtility.Upload(TransferUtilityUploadRequest request)
at WCFRestService.StreamAsInput.UploadFileWithStream(Stream FileStream) in D:\Research\Research\RestService\StreamAsInput.svc.cs:line 42

Any help will be greatly appreciated
Posted
Updated 17-Aug-15 1:39am

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900