有没有办法从MSDeploy包中生成的SetParameters.xml中删除参数。
My Parameters.xml如下所示:
<parameter name="Server" defaultValue="" />
<parameter name="Directory" defaultValue="" />
<parameter name="Service URL" defaultValue="http://{Server}/{Directory}/Services/GeneralIntegrationService.svc" tags="hidden">
<parameterEntry kind="XmlFile" scope="Web.config" match="//system.serviceModel/client/endpoint[@name='BasicHttpBinding_IGeneralIntegrationService']/@address" />
我想要的是生成的SetParameters.xml只包含前两个参数。
我已经回顾了这个问题: Can MSBuild exclude "Hidden" Web Deploy parameters from the generated SetParameters.xml?
然而,我无法理解.targets文件应该如何设置。有人可以详细说明parameters.xml和.targets文件的完整示例。另外,我需要在.targets文件的构建属性中设置什么吗?
答案 0 :(得分:0)
我不认为SetParameters方法设计为以这种方式使用。我会将配置转换用于您想要从安装应用程序的人员中隐藏的参数。
修改强> 实际上,对于您的场景,您可以在Web.config中进行“搜索和替换”以获得所需的结果
在你的parameters.xml中
<parameters>
<parameter name="Server" description="" defaultValue="" tags="">
<parameterEntry kind="TextFile" scope="\\web.config$" match="@@Server@@" />
</parameter>
<parameter name="Directory" description="" defaultValue="" tags="">
<parameterEntry kind="TextFile" scope="\\web.config$" match="@@Directory@@" />
</parameter>
</parameters>
如果你需要Web.Config中的端点地址,只需输入如下的URL:
http://@@Server@@/@@Directory@@/Services/GeneralIntegrationService.svc