Msbuild 如何使用MSDeploy转换Web.config自定义节?

Msbuild 如何使用MSDeploy转换Web.config自定义节?,msbuild,msdeploy,Msbuild,Msdeploy,使用MSDeploy时,有没有方法转换web.config自定义节的值 <configSections> <sectionGroup name="myGroup"> <section name="data" type="MyApp.DataConfigurationSection, MyApp.Data" /> </sectionGroup> </configSections> <myGr

使用MSDeploy时,有没有方法转换web.config自定义节的值

  <configSections>
    <sectionGroup name="myGroup">
      <section name="data" type="MyApp.DataConfigurationSection, MyApp.Data" />
    </sectionGroup>
  </configSections>

  <myGroup>
    <data interval="3" useCache="true" />
  </myGroup>


根据构建配置,我需要例如更改“useCache”值。

是的,MSDeploy非常容易支持这一点

创建部署包时,您希望使用该选项在部署包中创建可替换参数。您可以使用以下内容:

-declareParam:name=UseCache,kind=XmlFile,scope=web.config,match="/configuration/myGroup/data/@useCache"
-setParam:name=UseCache,value="false"
然后,在部署包时,可以使用命令在部署期间替换参数。比如:

-declareParam:name=UseCache,kind=XmlFile,scope=web.config,match="/configuration/myGroup/data/@useCache"
-setParam:name=UseCache,value="false"
此示例将UseCache参数替换为“false”,该参数指向web.config文件中的UseCache属性


您可以声明任意数量的要替换的参数,MSDeploy支持使用文件保存这些参数。文件是简单的Xml文件,然后使用
-setParamFile:
-declareParamFile:
语法。

在配置转换文件(web.config.release)中写入转换