是否可以在没有MSBuild的情况下编译C#项目?

时间:2015-11-09 12:55:53

标签: c# msbuild

我正在开发一个deployer应用程序,它发布(构建和创建输出)C#项目并完成其他工作。

MSBuild不方便。所以,我考虑过创建自己的构建引擎。

我知道可以使用C#编译器将简单的 sample.cs 文件编译成dll文件。但是我可以完全没有MSBuild编译项目吗?

2 个答案:

答案 0 :(得分:3)

是的,您可以使用csc(C#编译器)来编译源代码。问题是你必须自己一切

由于MSBuild可以解释slncsproj文件,并了解要采取的各种操作,使用的参考和在哪里找到它们,它比{{1}更容易使用}。例如:有一些特定于Office加载项的任务。 MSBuild知道如何从远程目标文件中执行它们。你没有,所以如果你想使用它们,你需要自己做所有的动作。如果你想编译非常复杂的项目,那就有可能了。

use Roslyn to set up your compile statements and actually compile your code可能有所帮助。您仍然需要一种指定所有参数的方法。

答案 1 :(得分:2)

正如this answer中提到的那样,您可以使用其他构建引擎来查看它们是否符合您的需求。其中两个是Microsoft.Build和Make for Windows