2011-06-14 60 views
0

我希望能够通过MSBuild在解决方案文件中删除项目引用。MSBuild:使用FileUpdate修改解决方案文件任务或类似任务

我假设我可以使用FileUpdate任务来做到这一点;不过,我不确定您是如何开启多行正则表达式功能的。实质上,我需要删除一个引用,例如:删除Project和EndProject之间的所有行都包含DELETEME的所有内容。我知道如果我知道如何打开mulltiline功能,我可以使用单词边界。如果有人有更好的想法,也是受欢迎的。谢谢:

Microsoft Visual Studio Solution File, Format Version 11.00 
# Visual Studio 2010 
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DELETEME", "DELETEME.csproj", "{08F67FEA-5A63-4A46-B38F- 
26EF15E003A9}" 
EndProject 

<FileUpdate 
    Files="PATH TO SOLUTION" 
    Regex="PATTERN" 
    ReplacementText=" " /> 

我不能在此任务的参数找到文档的任何地方之一:/也许像RegexOptions =“多行”

+0

我知道在perl它是/ m也许这在这里工作? – 2011-06-14 20:45:39

回答

0

我个人比较喜欢写这打扫卫生自定义活动为了我。

Ewald Hoffman有一系列关于自定义Team Build工作流程的博客文章。第5部分特别描述了编写自定义活动来自动更新程序集版本,只需稍作更改即可应用于您的情况。
http://www.ewaldhofman.nl/post/2010/05/13/Customize-Team-Build-2010-e28093-Part-5-Increase-AssemblyVersion.aspx

+0

一旦我们将构建迁移到TFS 2010,我会给出这个答案。希望能够提出一个不涉及自定义任务的解决方案,因为在2010年,您可以直接在构建文件中编写它,而不是使用自定义dll 。无论如何,谢谢你的建议,并让你知道它是怎么回事。 – 2011-06-15 21:40:44

相关问题