none
NotImplement Azure Storage on Xamarin.Forms App

    Question

  • I have tried all of the Xamarin Storage snippets I could find but Azure never returns anything or stores anything. It often does not even throw any exceptions, just ignores much of the code it seems.

    I am down to these:

     public async Task<string> TestStorage()
     {
        CloudBlobContainer container = new CloudBlobContainer(new Uri(Settings.StorageContainerUrl), new StorageCredentials(Settings.StorageAccountName, Settings.StorageAccountKey));
        //CloudBlockBlob blob = container.GetBlockBlobReference("mytest2");
        //await blob.UploadTextAsync("This is newly uploaded data");
        CloudBlockBlob blob = container.GetBlockBlobReference("mytest");
        string data = await blob.DownloadTextAsync();
        return data;
    }
    If I give it an incorrect StorageContainerUrl or a StorageAccountName then Azure throws an error. So far so good, it must be connecting and validating that information.

    However, if I give it a bad StorageAccountKey then no exception is thrown.

    Furthermore, the DownloadTextAsync command returns nothing for an existing blob -- in fact it never returns and string data is never set. Eventually a StorageException NotImplementedException is thrown

    Request Information
    RequestID:39730ffc-0001-00ed-45ed-69f892000000
    RequestDate:Sun, 08 Jan 2017 20:27:34 GMT
    StatusMessage:PartialContent

    If I uncomment the UploadTextAsync then it also does nothing, and no Blob is created on Azure.

    I'm probably committing some simple error, but I've tried every combination that I've found including CloudStorageAccount.Parse, CreateCloudBlobClient. I think I'm on the right track because of the exceptions I'm getting from Azure if I give it a bad URL or Account.<string></string>
    Sunday, January 8, 2017 8:52 PM

All replies

  • Hi,


    Thank you for contacting Microsoft forums. We are pleased to answer your query.


    We are checking on the query and will get back to you soon on this.

    I apologise for the inconvenience and appreciate your time and patience in this matter.

     

    Regards.

    Md. Shihab

    Monday, January 9, 2017 10:25 AM
  • Hi @AlexGier,

    Thanks for reporting your issue. With the recent release of version 8.0.0 we are using a new hashing algorithm supported by netstandard/CoreFx which is not implemented by Xamarin.

    We are in the process of providing a hotfix and involving folks from Xamarin.

    This issue will affect all APIs that require stream operations. We are working to fix this issue as soon as possible, meanwhile please use Storage Client version 7.2.1 as a workaround. We will update on GitHub(https://github.com/Azure/azure-storage-net/issues/387) once the fix is out.

    Thanks again for reporting this!

    Elham


    Monday, January 9, 2017 5:11 PM
  • Hi @AlexGier,

    A hotfix has been released for this issue, please upgrade to 8.0.1(https://www.nuget.org/packages/WindowsAzure.Storage/8.0.1) to resolve.

    Thanks again for reporting!

    • Proposed as answer by Md Shihab Sunday, January 15, 2017 6:00 AM
    Wednesday, January 11, 2017 4:19 AM
  • Just add NuGet Package "NETStandard.Library" v 1.6.1 to your Solution.
    Tuesday, April 25, 2017 5:18 PM