Как изменить настройки приложения Web.Config с помощью target.wpp
Я создал файл wpp.targets, который выполняет все развертывание в Azure. Я хочу изменить свойство appsetting webconfig во время развертывания на Azure. Я нашел образец в http://sedodream.com/PermaLink,guid,25ddd39e-59de-4e35-becc-de19dcc5e4ea.aspx, который использует pubxml и parameters.xml. Я хочу использовать wpp.targets вместо pubxml.
<appSettings>
<!-- TODO: set this in the azure config -->
<add key="customer" value="xyz" />
</appSettings>
Необходимо обновить значение клиента до "client" во время развертывания, а файл web.config должен отражать изменения в развернутой папке, как показано ниже
<appSettings>
<add key="customer" value="client" />
</appSettings>
ОТВЕТ
Я добился с помощью ProjectParametersXMLFile в msDeploy
msbuild Api.csproj /p:ProjectParametersXMLFile="c:\parameter.xml"/p:PublishSettingsFile=%publishFileLocation%
1 ответ
Решение
Вы можете использовать параметр xml file
например
<parameters >
<parameter name="customer" description="web Job queue name" defaultValue="sitetest1">
<parameterEntry kind="XmlFile"
scope="\\web.config$"
match="/configuration/appSettings/add[@key='customer']/@value" />
</parameter>
<parameter name="customer" description="web Job queue name" defaultValue="sitetest">
<parameterEntry kind="XmlFile"
scope="\\app.config$"
match="/configuration/appSettings/add[@key='customer']/@value" />
</parameter>
</parameters>
этот файл изменит настройки приложения при развертывании в Azure на основе заданного вами значения по умолчанию