在没有MSBuild的情况下编译C#项目可能吗?

在没有MSBuild的情况下编译C#项目可能吗?,c#,msbuild,C#,Msbuild,我正在开发一个deployer应用程序,它发布(构建和创建输出)C#项目并执行其他工作 MSBuild并不方便。因此,我考虑创建自己的构建引擎 我知道可以使用C#编译器将简单的sample.cs文件编译成dll文件。但是我可以完全不用MSBuild编译项目吗?是的,您可以一直使用csc(C编译器)来编译源代码。问题是你必须自己做每件事 由于MSBuild可以解释sln和csproj文件,并了解要采取的各种操作、要使用的引用以及在何处找到它们,因此它比csc更易于使用。例如:有一些特定于Offic

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

MSBuild并不方便。因此,我考虑创建自己的构建引擎


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

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

由于MSBuild可以解释
sln
csproj
文件,并了解要采取的各种操作、要使用的引用以及在何处找到它们,因此它比
csc
更易于使用。例如:有一些特定于Office加载项的任务。MSBuild知道如何从远程目标文件执行它们。你没有,所以如果你想使用这些,你需要自己做所有的动作。如果您想编译非常复杂的项目,这是可能的,只是有点难


这可能会有帮助。您仍然需要一种方法来指定所有参数。

如中所述,您可以使用其他生成引擎来查看它们是否适合您的需要。其中两个是Microsoft.Build和Make for Windows

MSBuild的什么地方让它“不方便”?我同意它本身并不是最好的工具,但我已经成功地使用了一个GUI应用程序,该应用程序使用了MSBuild和我们以前编写的一些脚本来完全自动化部署过程。