使用MSBUILD任务更新web.config

时间:2009-12-18 12:04:02

标签: asp.net msbuild web-config web-deployment-project fileupdate

我正在使用Web部署项目在我正在部署的网站上执行一些后期构建任务。

我想使用FileUpdate任务更新我的web.config并将编译模式从debug="true"更改为debug="false".

所以,从这个

<compilation defaultLanguage="c#"
                 debug="true" />

到此

<compilation defaultLanguage="c#"
                 debug="false" />

我的FileUpdateTask看起来像这样

<FileUpdate Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU'"
                Files="$(Configuration)\Web.Config"
                Regex="debug=\"true\""
                ReplacementText="debug=\"false\"" />

但由于无法以XML格式转义引号,因此完全无效。

我还能如何匹配Regex中的debug属性并拥有有效的ReplacementText值?

干杯

1 个答案:

答案 0 :(得分:5)

使用MSBuild Community Tasks中的XmlUpdate任务或尝试正则表达式:

Regex="debug=&quot;true&quot;"