asp.net – 可以从外部xml文件读取web.config吗?

前端之家收集整理的这篇文章主要介绍了asp.net – 可以从外部xml文件读取web.config吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我必须在WCF主机使用的web.config文件和Web客户端使用的web.config文件之间复制一些设置(如连接字符串)。

为了不复制,我可以同时从一个单独的xml文件读取web.config?两个web.config可以完全在不同的解决方案/项目,所以我猜这是不可能的,但想得到其他人的意见。

PS:我明白我可以使用数据库来存储所有的配置设置。

解决方法

是的,任何配置部分都可以“外部化” – 这包括诸如< appSettings>,< connectionStrings>还有很多。

你的web.config中有这样的东西:

<configuration>
   <appSettings configSource="appSettings.config" />   
   <connectionStrings configSource="connectionStrings.config" />
   <system.web>    
      <pages configSource="pages.config" />
      <httpHandlers configSource="httphandlers.config">
   </system.web>    
</configuration>

外部化的配置将只包含其中的一个子节点:

httphandlers.config:

<httpHandlers>
    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions,Version=3.5.0.0,Culture=neutral,PublicKeyToken=31BF3856AD364E35"/>
    <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,PublicKeyToken=31BF3856AD364E35"/>
    <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler,PublicKeyToken=31BF3856AD364E35" validate="false"/>
</httpHandlers>

请注意,您无法外部化整个< system.web>部分,因为这是一个配置部分组 – 而不是配置部分 – 但您可以外部化system.web中包含的大多数子部分。

猜你在找的asp.Net相关文章