如何让我的.NET程序在运行时编译C#代码?

4
我看过一些.NET应用程序,它们允许你选择一个C# .cs源文件,然后程序会编译这段代码并运行它。
这是如何实现的?
4个回答

11

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

CompileAssemblyFromDom
CompileAssemblyFromFile
CompileAssemblyFromSource

2

1

0

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

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接