Azure CloudStorageAccount.Parse未处理的异常错误

时间:2017-05-30 14:07:57

标签: c# xamarin.forms azure-storage azure-storage-blobs

简而言之,我有代码应该为我的存储帐户获取容器,1行正在抛出未处理的异常。

        private CloudBlobContainer GetContainer()

    {

        try
        {
            CloudStorageAccount account;
            CloudBlobClient client;
            CloudBlobContainer container;

            account = CloudStorageAccount.Parse(Configuration.StorageConnectionString);
            client = account.CreateCloudBlobClient();
            container = client.GetContainerReference("teststorage");
            return container;
        }
        catch (FormatException fe)
        {
            Debug.WriteLine(fe); return null;
        }
        catch (ArgumentNullException ane)
        {
            Debug.WriteLine(ane); return null;
        }
        catch (ArgumentException ae)
        {
            Debug.WriteLine(ae); return null;
        }
        catch (Exception ex)
        {
            Debug.WriteLine(ex); return null;
        }
        return null;
    }

第一行无法实际执行任何操作,

account = CloudStorageAccount.Parse(Configuration.StorageConnectionString);

它正在调用的配置看起来像这样,

    public static class Configuration
{
    public const string StorageConnectionString = "DefaultEndpointsProtocol=https;AccountName=storename;AccountKey=alongaccoutkeything==;EndpointSuffix=core.windows.net";
}

实际帐户名称全是小写,并且密钥是从门户复制的,实际上整个连接字符串都是完全复制的。我正在使用WindowsAzure.Storage 8.1.3和Xamarin.Forms 2.3.5.239-pre3。 我在物理Windows Phone,Android手机和Kindle上测试,两个Android版本都是5.1,Windows手机是最新稳定的Win10版本。

欢迎所有想法。

完整的错误就是这样,按照你的意愿制作它,但它在上面提到的那一行中提出:

    0xFFFFFFFFFFFFFFFF in System.Diagnostics.Debugger.Mono_UnhandledException_internal  C#
0x1 in System.Diagnostics.Debugger.Mono_UnhandledException at /Users/builder/data/lanes/4009/3a62f1ea/source/mono/mcs/class/corlib/System.Diagnostics/Debugger.cs:122,4 C#
0x20 in object.47865625-a11f-4fd0-83e7-222f80f73ceb C#
0x12 in System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw at /Users/builder/data/lanes/4009/3a62f1ea/source/mono/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:143,13   C#
0x6 in System.Runtime.CompilerServices.AsyncMethodBuilderCore.AnonymousMethod__0 at /Users/builder/data/lanes/4009/3a62f1ea/source/mono/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/AsyncMethodBuilder.cs:1018,49    C#
0xC in Android.App.SyncContext.Post.AnonymousMethod__0 at /Users/builder/data/lanes/4009/3a62f1ea/source/xamarin-android/src/Mono.Android/Android.App/SyncContext.cs:35,19  C#
0x11 in Java.Lang.Thread.RunnableImplementor.Run at /Users/builder/data/lanes/4009/3a62f1ea/source/xamarin-android/src/Mono.Android/Java.Lang/Thread.cs:36,6    C#
0xA in Java.Lang.IRunnableInvoker.n_Run at /Users/builder/data/lanes/4009/3a62f1ea/source/monodroid/src/Mono.Android/platforms/android-25/src/generated/Java.Lang.IRunnable.cs:81,4 C#
0x11 in object.47865625-a11f-4fd0-83e7-222f80f73ceb C#

**有趣的是,这也出现在输出窗口中......

[0:] System.TypeInitializationException:' Microsoft.WindowsAzure.Storage.CloudStorageAccount'的类型初始值设定项。抛出一个例外。 ---> System.NotImplementedException:未实现方法或操作。   在Microsoft.WindowsAzure.Storage.CloudStorageAccount.Setting(System.String name,System.String [] validValues)[0x00000]在C:\ Program Files(x86)\ Jenkins \ workspace \ release_dotnet_master \ Lib \ AspNet \ Microsoft.WindowsAzure中。 Storage.Facade \ FacadeLib \ Microsoft.WindowsAzure.Storage.CloudStorageAccount.cs:210   在C:\ Program Files(x86)\ Jenkins \ workspace \ release_dotnet_master \ Lib \ AspNet \ Microsoft.WindowsAzure.Storage.Facade \ FacadeLib \ Microsoft.WindowsAzure中的Microsoft.WindowsAzure.Storage.CloudStorageAccount..cctor()[0x00000]。 Storage.CloudStorageAccount.cs:16    ---内部异常堆栈跟踪结束---   在E:\ ServicesDemo \ ServicesDemo \ ServicesDemo \ UploadPage.xaml.cs中的ServicesDemo.UploadPage.GetContainer()[0x00002]:66 发生了未处理的异常。

2 个答案:

答案 0 :(得分:1)

看起来您的依赖项未正确设置。您可以尝试删除并读取对WindowsAzure.Storage的依赖吗?您是否还可以描述您如何设置项目并获取依赖关系?谢谢!

答案 1 :(得分:-1)

从连接字符串中删除EndpointSuffix = core.windows.net。