Web.Config使用新的线符号进行转换

时间:2011-12-02 17:30:09

标签: asp.net web-config transform web-config-transform

我在我的应用程序中使用.settings文件,我有时需要覆盖web.config文件中的设置。

所以这是一个由web.config覆盖设置的示例:

    <applicationSettings>
        <ADM.Web.Admin.ADMSettings>
            <setting name="ApplicationWebAddress" serializeAs="String">
                <value>http://localhost:8929</value>
            </setting>
        </ADM.Web.Admin.ADMSettings>
    </applicationSettings>

我需要更改此设置,具体取决于我是否发布到Dev或Live网站 所以我像这样描述Web.Debug.config:

        <setting name="ApplicationWebAddress" serializeAs="String" xdt:Transform="Replace" xdt:Locator="Match(name)">
            <value>http://dev.site.com</value>
        </setting>

和Web.Release.config:

        <setting name="ApplicationWebAddress" serializeAs="String" xdt:Transform="Replace" xdt:Locator="Match(name)">
            <value>http://live.site.com</value>
        </setting>

发布后,我在Web.Config文件中找到了以下内容:

        <setting name="ApplicationWebAddress" serializeAs="String">
            <value>http://live.site.com
            </value>
        </setting>

你可以看到之前有一个新的界限。 我的问题是为什么有“新行”以及如何将一个设置值更改为另一个?

2 个答案:

答案 0 :(得分:3)

答案 1 :(得分:0)

不确定新行,但另一个解决方案是在web.config中使用自定义ConfigSections并将您的URL写为属性值