从app.config中读取密钥

时间:2017-04-09 17:23:02

标签: c# asp.net asp.net-web-api

app.config读取密钥无效

我的解决方案中有4层:

  • 业务层
  • 数据访问层
  • 表示层
  • 共享图层

我在共享层中添加了这个app.config文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="TEST" value="ItsWorking" />
  </appSettings>
</configuration>

我在参考文献

中加入了System.Configuration dll

我试过

var value = ConfigurationManager.AppSettings["TEST"]; 

但它返回null

1 个答案:

答案 0 :(得分:1)

配置只从正在执行的项目程序集中读取,因此您只需要在可执行项目中,并且可以从所有其他项目中访问。

也许你可以使用带有接口的配置提供者和你可以从你所有项目中访问的IOC。

喜欢

public interface IConfigurations
{
  string TEST {get;}
}

您可以在所有项目中使用此接口,并且仅在实现正确配置的位置实现app.config,xml,.text,DB或任何源的接口。

  public class Configurations : IConfigurations
    {
      public string TEST => ConfigurationManager.AppSettings["TEST"]; 
    }