MVC中的共享库使用App.Config

时间:2018-05-08 19:15:44

标签: c# asp.net-mvc

我的解决方案中有一个项目类库。我在解决方案中有两个引用该库的控制台应用程序。我通过链接添加到控制台应用程序中的库中有一个App.config,一切都很棒。

我刚刚在解决方案中添加了一个Web应用程序并引用了类库。类库有var foo = ConfigurationManager.AppSettings["Foo"];行的多个引用。这在控制台应用程序中工作正常,但在运行Web应用程序时,"Value cannot be null. Parameter name: value"访问行的ConfigurationManager会出现异常。

我修改了我的web.config以匹配以下内容:

<configuration>
  <appSettings file="App.config">
    <add key="webpages:Version" value="3.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>

我已将app.config作为现有对象添加到Web应用程序项目中作为链接。我将它设置为在构建时始终复制。

我看过thisthat我仍然无法开展工作。

进一步澄清。 Web应用程序在类库中调用方法。类库使用ConfigurationManager。这失败了。在同一解决方案中,控制台应用程序可以执行相同的操作并且可以正常工作。

1 个答案:

答案 0 :(得分:1)

ASP.NET不使用app.config。它使用web.config。 ConfigurationManager将从适合项目类型的配置文件中读取。你真的不应该在类库中有.config文件,而是让消费应用程序将配置存储在该项目类型的相应配置文件中。