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

Как применить два разных преобразования к одному элементу web.config?

Из моего проекта развертывания VS2010 я хотел бы применить два разных преобразования к двум различным атрибутам одного элемента в моем web.config. Рассмотрим следующий фрагмент web.config:

<exampleElement attr1="false" attr2="false" attr3="true" attr4="~/" attr5="false">
  <supportedLanguages>
    <!-- Some more elements here -->
  </supportedLanguages>
</exampleElement>

Теперь, как я могу изменить атрибут attr1 и удалить атрибут attr5 в преобразованном web.config? Я знаю, как выполнять отдельные преобразования:

<exampleElement attr1="true" xdt:Transform="SetAttributes(attr1)"></exampleElement>

и

<exampleElement xdt:Transform="RemoveAttributes(attr5)"></exampleElement>

Но я не знаю, как объединить эти преобразования. Кто-нибудь?

EDIT:

Не могу ответить на мой собственный вопрос, но решение похоже:

Кажется, что можно повторить один и тот же элемент с различными преобразованиями, например:

<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
    <exampleElement attr1="true" xdt:Transform="SetAttributes(attr1)"></exampleElement>
    <exampleElement xdt:Transform="RemoveAttributes(attr5)"></exampleElement>
</configuration>

Как сказано, это похоже на работу, но я не уверен, является ли это предполагаемым использованием синтаксиса преобразования web.config.

4b9b3361

Ответ 1

Как подтвердил Ник Нисланик, это делается путем повторения одного и того же элемента с различными преобразованиями, например:

<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
    <exampleElement attr1="true" xdt:Transform="SetAttributes(attr1)"></exampleElement>
    <exampleElement xdt:Transform="RemoveAttributes(attr5)"></exampleElement>
</configuration>

Ответ 2

Я использую инструмент XmlPreprocess для преобразования файлов конфигурации и манипуляций. Он использует один файл сопоставления для нескольких сред. Вы можете редактировать файл сопоставления Excel. Он очень прост в использовании. Вы можете обновить свои файлы конфигурации с помощью xmlpreprocess и использовать конфигурацию (debug, dev, prod,...) в качестве параметра для разных настроек...