2

アプリケーションで.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>

ご覧のとおり、前に改行があります。私の質問は、なぜ「改行」があるのか​​、ある設定値を別の設定値に変更するにはどうすればよいのかということです。

4

2 に答える 2

3

VS2010 SP1をインストールしてみましたか?

これを確認してください:Web.configトランスフォームは、applicationSettingsセクションの下のvalues要素に余分な改行/スペースを書き込みます

于 2011-12-08T21:46:57.567 に答える
0

新しい行についてはわかりませんが、別の解決策として、web.configのカスタムConfigSectionsを使用して、URLを属性値として書き込むことができます。

于 2011-12-02T18:30:12.697 に答える