Подтвердить что ты не робот

Как использовать applicationSettings в новой конфигурации web.config в VS2010?

Я использую проекты веб-развертывания. В настоящее время я разрабатываю новое веб-приложение с VS2010 и хочу попытаться ужиться с новым принципом web.config и проблемами с развертыванием.

Как заменить простой параметр, например

<applicationSettings>
  <NAMESPACE>
   <setting name="Testenvironment" serializeAs="String">
    <value>True</value>
   </setting>
  </NAMESPACE>
</applicationSettings>

Я хочу, чтобы этот параметр был установлен в True в Debug и false в Release. Как должны выглядеть записи в Web.Debug.config и Web.Release.Config?

И, кстати,: Есть ли какая-то документация о новой проблеме web.config? Невозможно показать Google правильные ключевые слова.

4b9b3361

Ответ 1

Вы также можете использовать этот способ; для среды prod, например.

<applicationSettings xdt:Transform="Replace">
  <NAMESPACE> 
   <setting name="Testenvironment" serializeAs="String"> 
    <value>False</value> 
   </setting> 
  </NAMESPACE> 
</applicationSettings> 

С уважением.

Ответ 2

Лучшим способом было бы сделать следующее:

<applicationSettings> 
  <NAMESPACE> 
   <setting name="Testenvironment" serializeAs="String"  xdt:Transform="Replace" xdt:Locator="Match(name)"> 
    <value>True</value> 
   </setting> 
  </NAMESPACE> 
</applicationSettings> 

Вместо предложения Zubeyir, поскольку этот только заменит заданную настройку, а не заменит WHOLE раздела applicationSettings.

Ответ 3

Вы должны скопировать этот параметр в оба файла веб-конфигурации - Web.Debug.config и Web.Release.config и поместить атрибуты преобразования xdt:Transform="SetAttributes" xdt:Locator="Match(name)".

Вы можете увидеть это видеоуроку - http://chriskoenig.net/index.php/2010/04/08/how-do-i-web-config-transformations-in-vs2010/

Надеюсь, что это поможет.

Ответ 4

Вот ссылка с большим количеством образцов по этой теме: http://msdn.microsoft.com/en-us/library/dd465326.aspx.

Но, похоже, проблема особенно связана с преобразованиями Web.config и applicationSettings: у всех ответов на этот запрос с помощью xdt-Transform="Replace" возникает проблема, заключающаяся в том, что они добавляют дополнительное пространство в развернутый файл Web.config из-за форматирования XML. Это приводит к ошибочному поведению, если вы потребляете результирующие настройки. Кажется, нет решения. Вот мой неотвеченный вопрос по этой проблеме: Преобразование конфигурации VS 2010 создает нежелательное пустое пространство во время развертывания.