Я пытаюсь применить преобразование на основе значения параметра приложения в моем web.config для моего проекта MVC asp.net.
<!--web.config-->
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="Feature.GlobalSSLRedirect" value="true"/>
</appSettings>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
Я хочу, чтобы приведенное ниже преобразование вставило новый элемент вэлемент customHeaders, когда значение параметра приложения Feature.GlobalSSLRedirect равно true.
<!--web.release.config-->
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Strict-Transport-Security" value="max-age=16070400; includeSubDomains" xdt:Transform="Insert" xdt:Locator="Condition(configuration/appSettings/add[@key='Feature.GlobalSSLRedirect']/@value = 'true')" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
Я пытался использовать запрос XPath, чтобы выбрать значение параметра приложения и использовать его в качестве условия, чтобы решить, следует ливставьте нужный XML в элемент customHeaders.Я пробовал много разных вариантов запроса XPath, но не смог заставить его работать.
Любая помощь будет принята с благодарностью.