Преобразование тега machineKey - PullRequest
0 голосов
/ 08 апреля 2019

Мы должны преобразовать тег, в котором «decryptionKey» и «validationKey» будут отличаться для наших сред разработки и тестирования.

Мы пытались дать разные переменные для validationKey и decryptionKey, но путали с xdt:Transform и атрибут xdt: Locator, поскольку они будут встречаться один раз в одном и том же теге.

Предположим, что следующим является тег machineKey web.config,

<machineKey decryptionKey="012345678910111213141516"
            validation="SHA1"                validationKey="235487512547896321458778996325456965542126364586965" />

Мы должны дать преобразованию что-то вроде следующего:

<machineKey decryptionKey="#{DecryptionKey}#"
            validation="SHA1"
            validationKey="#{ValidationKey}#"
            xdt:Transform="SetAttributes" 
            xdt:Locator="Match(decryptionKey)"
            xdt:Transform="SetAttributes" 
            xdt:Locator="Match(validationKey)" />

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

1 Ответ

0 голосов
/ 09 апреля 2019

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

Это задокументировано здесь

Однако, если вы на самом делезаменяя все атрибуты, может быть проще / чище использовать xdt:Transform="Replace" и устанавливать полное значение тега в каждой конфигурации.

...