【发布时间】:2008-09-23 00:14:24
【问题描述】:
我有一个自定义程序,它预处理一个 C# 文件并生成一个新的 C# 文件作为输出。我想在项目中的每个 C# 文件上从 msbuild 调用它,然后编译输出文件而不是原始 C# 文件。我该怎么办?
【问题讨论】:
我有一个自定义程序,它预处理一个 C# 文件并生成一个新的 C# 文件作为输出。我想在项目中的每个 C# 文件上从 msbuild 调用它,然后编译输出文件而不是原始 C# 文件。我该怎么办?
【问题讨论】:
您可能想研究在 Visual Studio 中使用“自定义工具”代码生成技术; CodeProject上有一篇关于它的文章
【讨论】:
我不确定是否有一种简单的方法可以使用默认的 msbuild 任务来执行它。但是您可以创建自己的任务来做任何您想做的事情:
How To: Implementing Custom Tasks - Part I
您也可以在“MSBuild community tasks”网站上搜索合适的任务。
【讨论】:
如果您的自定义程序是可执行文件,最简单的方法是使用 Exec 调用可执行文件:
<Exec Command="your executable" />
不过,我建议编写自定义 MSBuild 任务。您可以查看SDC Tasks 以获取有关如何操作的示例。
【讨论】: