"条目已被添加" - 两个独立的应用程序池

时间:2014-04-29 14:19:56

标签: asp.net-mvc-4 application-pool

我正在创建现有生产站点的测试版本。站点内部存在虚拟Web服务应用程序 - 两个Web配置具有相同的连接字符串。

没有"清楚"生产Web配置中的标签以及站点和Web服务在两个独立的应用程序池上共存。

但是,在测试网站上,每次浏览到Web服务URL时,我都会收到配置错误"条目' ConnectionString'已被添加。"

测试站点和相应的虚拟应用程序使用自己独立的应用程序池。有什么想法吗?

由于 吉姆

2 个答案:

答案 0 :(得分:15)

即使在不同的appPools之间也会发生Web.config继承。 如果要停止此行为,则应将属性enableConfigurationOverride="false"添加到a​​pplicationHost.config文件中的appPool(位于%WINDIR%\ System32 \ inetsrv \ Config和%WINDIR%\ SysWOW64 \ inetsrv \ config中)如下例所示:

<add name="MyAppPool" autoStart="true" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" enableConfigurationOverride="false">
    <processModel identityType="NetworkService" />
</add>

利玛

答案 1 :(得分:1)

我认为问题与他们是另一个网站有关。就像里面有虚拟目录的网站一样。

在这种情况下......虚拟目录web.config是&#34;继承&#34;父web.config

您可以在此处查看如何解决此问题的详细信息:How to stop inheritance of <configSections>in Web.Config

其他选项:https://stackoverflow.com/a/367372/7720

如果问题出在web.config的其他部分(不在部分中),则可以使用<location path="." inheritInChildApplications="false">包装冲突部分。

其他选项可以让网络服务从网站上获取连接。