是否有托管API来编译C#应用程序(到内存或磁盘)?我假设存在一个因为SharePoint在内存中编译ASP.NET页面。我们希望在运行时使用它来生成Linq DataContext
并针对各种项目编译它们。
答案 0 :(得分:3)
看一下Microsoft.CSharp.CSharpCodeProvider课程。该页面包含如何使用该类编译C#源代码的示例代码。
注意:此类不能用于部分信任。您需要以完全信任的方式运行才能运行C#编译器。
答案 1 :(得分:1)
正如Franci指出的那样,CSharpCodeProvider就是你想要的。
在编写我的C#书时,我构建了“Snippy”,这是一种构建和运行C#代码片段的快速方法 - 这是一个非常简单的项目,可以很容易地看到如何使用CSharpCodeProvider。 full source可用 - 请查看。