如何使用 targets.wpp 更改 Web.Config 的应用程序设置
How to change app settings of Web.Config using targets.wpp
我创建了一个 wpp.targets 文件,它在 azure 中完成所有部署。我想在部署期间将 webconfig 的 appsetting 属性 更改为 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>
回答
我在 msDeploy
中使用 ProjectParametersXMLFile 实现了
msbuild Api.csproj /p:ProjectParametersXMLFile="c:\parameter.xml"/p:PublishSettingsFile=%publishFileLocation%
可以使用参数xml文件
例如
<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 中部署时更改应用程序设置
我创建了一个 wpp.targets 文件,它在 azure 中完成所有部署。我想在部署期间将 webconfig 的 appsetting 属性 更改为 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>
回答
我在 msDeploy
中使用 ProjectParametersXMLFile 实现了msbuild Api.csproj /p:ProjectParametersXMLFile="c:\parameter.xml"/p:PublishSettingsFile=%publishFileLocation%
可以使用参数xml文件
例如
<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 中部署时更改应用程序设置