外部配置文件

时间:2015-08-12 12:04:02

标签: asp.net

是否可以将web.config的子部分存储到外部配置文件中?

目前我只是得到了这个:

<configuration>
    <archiveConfiguration>
        <company>
            <archives>
                <archive name="DocumentPool" type="JU">
                    <parameter key="ConnectionString" value"......" />
                    <parameter key="ArchiveName" value="DocPool" />
                    ....
                </archive>
                <archive name="Bills" type="SU">
                    <parameter key="ConnectionString" value"......" />
                    <parameter key="ArchiveName" value="Bills" />
                    ....
                </archive>
            </archives>
        </company>
    </archiveConfiguration>
</configuration>

有没有办法将以下内容提取到外部配置文件?

<archives>
    <archive name="DocumentPool" type="JU">
        <parameter key="ConnectionString" value"......" />
        <parameter key="ArchiveName" value="DocPool" />
        ....
    </archive>
    <archive name="Bills" type="SU">
        <parameter key="ConnectionString" value"......" />
        <parameter key="ArchiveName" value="Bills" />
        ....
    </archive>
</archives>

如何将外部配置文件引用到web.config,以便应用程序成功读取存档部分? 我尝试通过引用archives.config将configSource添加到存档,但我完全被Web应用程序忽略了。有什么我想念的吗?

1 个答案:

答案 0 :(得分:1)

自定义子部分支持属性configSource,因此您可以将它们提取到外部配置中,方法是将自定义部分设置为属性configSource,在这种情况下,此“部分”是元素。把它放在Web.config

<archives configSource="archives.config" />

archives.config你有

<archives>
<archive name="DocumentPool" type="JU">
    <parameter key="ConnectionString" value"......" />
    <parameter key="ArchiveName" value="DocPool" />
    ....
</archive>
<archive name="Bills" type="SU">
    <parameter key="ConnectionString" value"......" />
    <parameter key="ArchiveName" value="Bills" />
    ....
</archive>

我假设您已经创建了ConfigurationSection的子类,然后向Web.config as in this tutorial添加了自定义节处理程序。