2016-11-14 42 views
0

我有这个web.config,我希望在构建时使用msdeploy工具更改xml元素。配置Web包部署的参数来修改配置元素

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

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

回答

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/