如何使用C#代码运行C#代码?

时间:2010-06-22 09:21:51

标签: c#

我之前曾问过同样的question但是在java中.... 现在知识了,我想知道......

是否可以使用另一个C#代码运行一个C#代码?

bcz我知道C#非常强大,所以他们可能会采取某种方式来做到这一点。

3 个答案:

答案 0 :(得分:4)

这是同样的交易:

  • 编译代码,例如使用CSharpCodeProvider
  • 执行代码,例如使用反射

如果您来自深度网站C#中的download Snippy,您可以看到一个小例子 - 基本上您输入C#的片段,它可以为您编译和执行它们。

答案 1 :(得分:4)

这最终是一个运行时功能;在MS .NET中,CSharpCodeProvider是您目前最接近的,尽管他们已经提到将来可能会将“编译器视为服务”。

如果您愿意使用it already exists Mono,REPL example

用法(来自here):

  // First setup the active using statements:
  Evaluator.Run ("using System;");

  Evaluator.Run ("Console.WriteLine (\"Hello, World\");

答案 2 :(得分:1)

这有CodeDom命名空间。查看this article