如何在Visual Studio中自动将生成的源文件包含到C#项目中?

3
我有一个情况,需要在项目的预构建步骤中生成大量C#代码文件,并将生成的文件包含到当前项目中进行编译。有没有一种干净的方法,在每次运行预构建步骤时不必混乱地处理项目文件?
我的解决方案应适用于基于IDE的构建和基于MSBuild的Team Build。由于两者都是基于MSBuild的,我认为不会有太大的区别;但还是想提一下。
非常感谢任何帮助!
2个回答

2
一种方法是使用类似于Linq 2 SQL在dbml文件中使用MSLinqToSQLGenerator工具的自定义工具。但我认为自定义工具不能与MSBuild一起使用。 开发Visual Studio自定义工具

我将从一个DLL生成这些文件;而且我不知道会有多少个文件在之前被生成。否则,我可以在其他定义文件上使用占位符或自定义工具。 - Charles Prakash Dasari
有人建议使用自定义工具,并通过编写自定义任务来修改MSBuild项目定义,以生成这些文件并在编译时将它们包含到项目中。目前看来,这似乎是一个可行的替代方案。不过,我需要花费很多时间来整理所有这些内容。因此,我暂时没有立即验证的方法。就目前而言,我认为这个问题已经得到了回答。感谢大家提供的出色答案。 - Charles Prakash Dasari

-1
我有一个这样的项目。之前的开发人员只是添加了当前文件的副本,现在每次构建项目时,它们都会被拉入。
另一方面,他没有记录这一点,所以这一点根本不明显;我花了一些时间弄清楚发生了什么。但是我还没有必要修改设置。

好的,在我的情况下,我不知道需要提前生成多少个文件。这是阻碍我的最大障碍。否则我可以使用占位符。 - Charles Prakash Dasari

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接