4

我见过几个 .net 应用程序,它们允许您选择 C# .cs 源文件,程序本身将编译并运行此代码。

这是怎么做到的?

4

4 回答 4

11

它可能使用 Microsoft.CSharp 命名空间中的 CSharpCodeProvider 类。您可能希望查看以下编译代码的方法:

CompileAssemblyFromDom
CompileAssemblyFromFile
CompileAssemblyFromSource
于 2009-01-13T21:42:19.740 回答
2

CodeDOM是你的朋友

于 2009-01-13T21:44:27.347 回答
1

MSDN 有很多文章解释了这一点......

http://msdn.microsoft.com/en-us/library/650ax5cx.aspx

于 2009-01-13T21:44:04.743 回答
0

我的猜测是通过显式调用 csc.exe 编译器。请记住,这和任何依赖项都必须包含在您的部署中。

您可以查看解释 C# 文件的CS-Script 。它虽然免费但不是开源的......

于 2009-01-13T21:42:42.187 回答