CloudConfigurationManager与.NetCoreApp不兼容

时间:2016-09-27 18:56:30

标签: c# .net azure azure-storage

我一直在尝试使用以下代码行访问dotnet核心中的Azure Blob存储:

CloudStorageAccount account = CloudStorageAccount.Parse(
            CloudConfigurationManager.GetSetting("<MyStorageName>_AzureStorageConnectionString")
            );

事先我已经安装了所需的Azure SDK,并将其更新为dotnet核心兼容版本,然后,由于缺少CloudConfigurationManager,我根据this回答安装了Microsoft.WindowsAzure.ConfigurationManager。在更新此程序包之后,程序包还原失败,并显示以下错误消息:

Package Microsoft.WindowsAzure.ConfigurationManager 3.2.1 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package Microsoft.WindowsAzure.ConfigurationManager 3.2.1 supports: net40 (.NETFramework,Version=v4.0)
One or more packages are incompatible with .NETCoreApp,Version=v1.0.

是否有任何选项可以让CloudConfigurationManager正常工作,还是需要找到解决方法?

1 个答案:

答案 0 :(得分:6)

  

软件包Microsoft.WindowsAzure.ConfigurationManager 3.2.1与netcoreapp1.0(.NETCoreApp,Version = v1.0)不兼容。包Microsoft.WindowsAzure.ConfigurationManager 3.2.1支持:net40(.NETFramework,Version = v4.0)

在ASP.NET Core中,设置已移至appsettings.json。据我所知,现在不支持在.NETCoreApp上使用CloudConfigurationManager

要获得解决方法,您可以按照以下代码实施account

CloudStorageAccount account = new CloudStorageAccount(
    new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials(
        "<storage-accountname>",
        "<storage-accountkey>"), true);

此外,您可以参考此相关的SO thread。另外,为了更好地理解.NET Core中的配置,您可以遵循此tutorial