C# 无法使用.NET SDK for Amazon从Windows Phone将图像上载到Amazon s3

C# 无法使用.NET SDK for Amazon从Windows Phone将图像上载到Amazon s3,c#,file-upload,windows-phone-8,amazon-s3,C#,File Upload,Windows Phone 8,Amazon S3,我在WindowsPhone8项目中使用.NETSDK for AmazonS3。我正在使用以下代码 public async void UploadFile(string bucketName, string filepath) { string awsID = "myID"; string secretKey = "mysecretkey"; AmazonS3Client s3Client = new AmazonS3Client(

我在WindowsPhone8项目中使用.NETSDK for AmazonS3。我正在使用以下代码

public  async void UploadFile(string bucketName, string filepath)
    {
        string awsID = "myID";
        string secretKey = "mysecretkey";

        AmazonS3Client s3Client = new AmazonS3Client(awsID, secretKey);
        var request = new PutObjectRequest()
        {
            BucketName = "bucketname",
             InputStream = App.GetResourceStream(new Uri("projectname;component/Assets/call.png", UriKind.Relative)).Stream
        };

        await s3Client.PutObjectAsync(request);
        Console.WriteLine("File Uploaded");

    }
我已将图像的内容类型设置为“资源” 我得到了这个错误

AmazonS3中的XML格式不正确


在谷歌搜索中,我发现一个链接,要求我将文件名附加到bucket的名称中。这样做时,我知道在bucket中会创建一个文件夹,文件名和内容不会上载。

对于WinRT和Windows Phone,文件路径属性的格式必须为“ms”-appdata:///local/file.txt“如前所述

要从独立存储上载,可以使用InputStream属性

var request = new PutObjectRequest()
    {
        BucketName = "bucketname",
        InputStream = IsolatedStorageFile.GetUserStoreForApplication().OpenFile("YOUR_FILE_PATH", FileMode.Open);
    };

对于WinRT和Windows Phone,文件路径属性的格式必须为“ms”-appdata:///local/file.txt“如前所述

要从独立存储上载,可以使用InputStream属性

var request = new PutObjectRequest()
    {
        BucketName = "bucketname",
        InputStream = IsolatedStorageFile.GetUserStoreForApplication().OpenFile("YOUR_FILE_PATH", FileMode.Open);
    };

我已将文件路径替换为“ms”-appdata:///local/myimage.png“我仍然得到相同的例外,InputStream=App.GetResourceStream(新Uri(“../Assets/call.png”,UriKind.Relative)).Stream;而不是文件路径。您是否也尝试从独立存储上载文件?尝试捕获异常并获取内部异常。当我将filepath用作ms appdata时,会获取异常System.IO.FileNotFoundException:系统找不到指定的文件。(来自HRESULT:0x80070002的异常)}。当我使用InputStream时,我在执行putObjectAsync之前得到异常,因为{System.NullReferenceException:对象引用未设置为对象的实例。@Ritesh否目前我无法从独立存储中尝试,我正在引用本地文件我已将文件路径替换为“ms”-appdata:///local/myimage.png"我仍然得到了相同的例外,InputStream=App.GetResourceStream(新Uri(“../Assets/call.png”,UriKind.Relative)).Stream;而不是FilePath。您是否尝试从独立存储上载文件?尝试捕获异常并获取内部异常。当我将FilePath用作ms appdata时,会获取异常System.IO.FileNotFoundException:系统无法找到指定的文件。(HRESULT中的异常:0x80070002)}。当我使用InputStream时,在执行putObjectAsync之前,我收到异常,因为{System.NullReferenceException:对象引用未设置为对象的实例。@Ritesh否目前我无法从独立存储中尝试,我正在引用本地文件设置ContentType=“image/png”,解决了问题!!设置ContentType=“image/png”,解决了问题!!