从.Net应用程序编译.cs

时间:2008-10-22 18:21:06

标签: c#

是否有托管API来编译C#应用程序(到内存或磁盘)?我假设存在一个因为SharePoint在内存中编译ASP.NET页面。我们希望在运行时使用它来生成Linq DataContext并针对各种项目编译它们。

2 个答案:

答案 0 :(得分:3)

看一下Microsoft.CSharp.CSharpCodeProvider课程。该页面包含如何使用该类编译C#源代码的示例代码。

注意:此类不能用于部分信任。您需要以完全信任的方式运行才能运行C#编译器。

答案 1 :(得分:1)

正如Franci指出的那样,CSharpCodeProvider就是你想要的。

在编写我的C#书时,我构建了“Snippy”,这是一种构建和运行C#代码片段的快速方法 - 这是一个非常简单的项目,可以很容易地看到如何使用CSharpCodeProvider。 full source可用 - 请查看。