web.config里面使用configSource

web.config里面使用configSource

如果web.config里面的配置信息比较多,我们可以将这些配置信息写在多个config文件中,然后利用configSource将这些config文件包含进来。

  • 一、例如原web.config文件

     

  •  
  • XML 代码   复制
  • 
    <configuration>
        <!-- appSettings网站信息配置-->
        <appSettings>
    
         <add key="SiteResource" value="http://m.studyofnet.com"/>
         <add key="SiteUrl" value="http://www.studyofnet.com" />
         <add key="SiteKeyword" value="学习也休闲"/>
        </appSettings> 
    
        <connectionStrings>
         <add  name="connectionStrings"
              connectionString="....."
              providerName="System.Data.SqlClient" />
        </connectionStrings>
        <system.web>
            <compilation debug="true" targetFramework="4.0"/>
        </system.web>
    
    </configuration>
    
    				
  • 
    
    
    

    二、可以提取出两个单独的配置文件

    1、appSettings.config

  • XML 代码   复制
  • 
    
    <?xml version="1.0" encoding="utf-8"?>
    <appSettings>
         <add key="SiteResource" value="http://m.studyofnet.com"/>
         <add key="SiteUrl" value="http://www.studyofnet.com" />
         <add key="SiteKeyword" value="学习也休闲"/>
    </appSettings> 
    
    		
  • 2、connectionStrings.config

  •  
  •  
  • XML 代码   复制
  • 
    <?xml version="1.0"?>
    <connectionStrings>
      <add  name="connectionStrings"
              connectionString="....."
              providerName="System.Data.SqlClient" />
    </connectionStrings>
    
    		
  • 三、使用configSource将这两个文件包含进web.config

  • XML 代码   复制
  • 
    <configuration>
        <!-- appSettings网站信息配置-->
        <appSettings configSource="config\\appSettings.config" />
        <connectionStrings configSource="config\\connectionStrings.config"/>
        <system.web>
            <compilation debug="true" targetFramework="4.0"/>
        </system.web>
    
    </configuration>
    
    			
  • 四、使用时需要注意的地方

    1.如果指定了configSource,就以外部文件为准,web.config中connectionStrings下面的节点配置就无效了,即使web.config中connectionStrings下面的连接串节点没有删除掉也是无效的。

    2.外部文件的根节点必须与web.config中指定的节点相同(其实就是将该节点的配置移到外部文件中)

    3.一个节点只能指定一个外部配置文件,不能将多个节点的外部文件指定为同一个,如不能将connectionStrings与appSettings的configSource指定为同一个文件。

    标签: