Web.Config преобразуется с новым символом строки

Я использую файл .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>

Как вы видите, перед ним стоит новая строка. Мой вопрос: почему появляется «новая строка» и что делать, чтобы изменить одно значение параметра на другое?


person Anubis    schedule 02.12.2011    source источник
comment
У меня была та же проблема, и Trim() значение использовалось как быстрое решение. Но это явно не лучшее решение.   -  person Loic El Thesea    schedule 02.12.2011
comment
Я думал о Trim(), но нашел это решение бесполезным.   -  person Anubis    schedule 03.12.2011


Ответы (2)


Вы пытались установить VS2010 SP1?

Проверьте это: Преобразование Web.config записывает дополнительный разрыв строки/пробелы в элементы значений в разделе applicationSettings

person tieum    schedule 08.12.2011

Не уверен насчет новой строки, но другим решением может быть использование пользовательских ConfigSections в web.config и запись вашего URL-адреса в качестве значения атрибута.

person f0rza    schedule 02.12.2011