找出已加载的web.config

时间:2017-04-18 13:40:58

标签: c# web-config webconfigurationmanager

我遇到一个错误,指出我的解决方案的这个特定子项目正在加载的web.config有一个与已经加载的web.config中的现有条目冲突的连接字符串。 (例外消息是:附加信息:条目' connStr'已添加。

有没有办法轻松找到所有已加载/正在加载的web.configs的列表,以便我可以确定哪里发生冲突

2 个答案:

答案 0 :(得分:1)

只会加载一个web.config,但它会从您的计算机配置继承。对于IIS,这是:

%windir%\Microsoft.NET\Framework\framework_version\CONFIG\machine.config

对于其中一个地方的IIS Express:

%userprofile%\documents\iisexpress\config\applicationhost.config
%userprofile%\my documents\iisexpress\config\applicationhost.config
$(solutionDir)\.vs\config\applicationhost.config (only for Visual Studio 2015 and above)

因此,您可以从那里删除重复内容,或在remove中添加web.config条目,例如:

<connectionStrings>
  <remove name="MyConnection" />
  <add name="MyConnection" connectionString="..." providerName="System.Data.SqlClient" />
</connectionStrings>

答案 1 :(得分:1)

之前我遇到过这个问题,我在主web.config中添加了 inheritInChildApplications="false"。这样我就知道我的子web.config不会有任何冲突。