0

我有一个 ASP.NET 解决方案,其中有两个单独的项目。一个是普通的 UI,另一个是前者中引用的类库。

在我的类库项目中,我试图从 App.Config 文件中读取,但它正在从 Web.Config 文件中读取。我在用:

string url = Convert.ToString(ConfigurationManager.AppSettings["UpdateURL"]);

最初,此密钥是在 Web.Config 中编写的,但现在我已将其从那里删除并将其添加到 App.Config 文件中。但是,编译器仍在尝试从 Web.Config 中获取它。我可能做错了什么。请告诉我我需要做哪些改变才能完成这项工作。

4

2 回答 2

2

Web 应用程序将使用web.config.

将您的应用设置保留在其中。不需要 dll 特定的配置文件。

Windows 应用程序将使用App.config,而 Web 应用程序将使用web.config.

如果您在 Windows 或控制台应用程序中使用您的 dll,请将设置放在 app.config 中。

Dll 将始终使用它们加载到的应用程序的配置文件。如果你想拥有一个 dll 特定的配置文件,你必须自己加载它。

于 2013-07-09T07:02:37.973 回答
0

这是正常行为。任何引用的项目都将在父项的规则下运行。

所以如果你的类库有他自己的 appConfig 文件,这个就不再“有效”了。Web.Config 文件具有首选项。

您需要将类库的 appSettings 部分复制到 Web.Config 文件中。

您还可以选择“链接”设置的读取,就像 web.Config 的 appSettings 部分可能指向另一个 .config 文件,但这只是个人喜好问题,由您决定。

于 2013-07-09T07:29:11.907 回答