配置Web包部署的参数以修改配置元素

时间:2016-11-14 10:07:30

标签: xml parameters build config msdeploy

我有这个web.config,我希望使用msdeploy工具在构建时更改xml元素。

  <customBinding>
    <binding name="customBinaryBinding">
      <binaryMessageEncoding>
        <readerQuotas maxStringContentLength="20971520"/>
      </binaryMessageEncoding>
      <httpTransport maxReceivedMessageSize="2147483647" authenticationScheme="Negotiate" maxBufferSize="2147483647"/>
    </binding>
  </customBinding>

如何配置我的Parameters.xml和SetParameters以使其从httpTransport更改为httpsTransport。我是新来的,请耐心等我:)。

1 个答案:

答案 0 :(得分:0)

您可以使用parameterEntry匹配值替换XML节点,该值匹配您要替换为XPath参考的节点。例如,

<parameters>
  <parameter name="MyTestParam" description="My Test Param" defaultValue="&lt;httpsTransport  /&gt;">
    <parameterEntry kind="XmlFile" scope="web\.config" match="//binding[@name='customBinaryBinding']/httpTransport" />
  </parameter>
</parameters>

以下博文中有更多详细信息 -

https://blogs.iis.net/elliotth/web-deploy-xml-file-parameterization

另外一个快速更正,WebDeploy参数化发生在部署时而不是构建时。这是首选,因此您可以构建一次,创建一个包并将其多次部署到不同的环境中。以下文章介绍了参数化,并介绍了一个有用的VS扩展,用于预览参数化结果。

http://www.dotnetcatch.com/2014/09/08/parameterizationpreview-visual-studio-extension/