ConfigurationManager.AppSettings [key]在类库中不可访问

时间:2016-04-18 20:51:53

标签: c# azure

我无法从方法中访问my_def。代码最初是一个klass库,我添加了一个配置文件(CloudfigurationManager),我只是添加了Azure SDK的硬编码测试的值。

OpenSessionWithAzure()

App.config

的App.config

 private void OpenSessionWithAzure()
    {
        CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigurationManager.AppSetting["APP_SETTINGS"])// Visual Studio is unable to identify ConfigurationManager
    }

我是否有理由无法访问应用程序中的<?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="StorageConnectionString" connectionString="DefaultEndpointsProtocol=https;AccountName=userName;AccountKey=Key"/> <add name="SasPolicyName" connectionString="myPolicy"/> </connectionStrings> </configuration> 或已知的解决方法?

4 个答案:

答案 0 :(得分:2)

出现此错误的原因是因为我没有:

  1. 在我的课程库中引用System.Configuration.dll
  2. 没有using System.Configuration
  3. 添加执行上述步骤后,我无法访问ConfigurationManager.AppSettings["APP_SETTINGS"]

答案 1 :(得分:1)

您需要添加对System.Configuration的引用,然后在appSettings部分中添加键值对

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <appSettings>
          <add key="SasPolicyName" value="myPolicy" />
          <add key="APP_SETTINGS" value="MySetting" />
   </appSettings>
  <connectionStrings>
          <add name="StorageConnectionString"   connectionString="DefaultEndpointsProtocol=https;AccountName=userName;AccountKey=Key"/>
  </connectionStrings>
</configuration>

然后使用如下,

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigurationManager.AppSetting["APP_SETTINGS"])

答案 2 :(得分:1)

您使用的方法签名必须与App.config中的设置一致。

使用以下设置

<configuration>
  <appSettings>
    <add key="StorageConnectionString" value="XXXXXXXXX"/>
  </appSettings>
</configuration>

使用System.Configuration.ConfigurationManager.AppSettings["StorageConnectionString"]

System.Configuration.ConfigurationManager.ConnectionStrings["StorageConnectionString"]代表

<configuration>
  <connectionStrings>
    <add name ="StorageConnectionString" connectionString="XXXXXXXXXX"/>
  </connectionStrings>
</configuration>

答案 3 :(得分:0)

当您尝试从appSettings读取时,它会从正在执行的应用程序的.config文件中读取。因此,在最简单的实现中,您只需要将这些配置设置添加到该应用程序的.config文件(app.config或web.config。)如果您绝对需要库拥有自己的.config,还有其他方法可以处理它。文件,但将其添加到正在执行的应用程序的.config是最常见的。