.NET框架是否有任何允许您运行(编译,解释或其他)包含C#代码的外部脚本文件的类?
例如,如果我有一个包含此文件的文件Hello.cs
:
class Hello
//This program displays Hello World
{
static public void Main()
{
System.Console.WriteLine("Hello World");
}
}
如何在winform,app中加载上面的代码并执行它?
我对加载/执行逻辑感兴趣;该程序可以是任何东西,从控制台应用程序到另一个winform应用程序。
反射是否允许这样做?
答案 0 :(得分:3)
答案 1 :(得分:2)
.NET框架是否有允许您运行的任何类 (编译,解释或其他)包含C#的外部脚本文件 码?
是的,您可以使用CodeDomProvider类。
如何在winform,app和执行中加载上面的代码 它?
好吧,在使用上面的类编译C#代码之后,您可以使用ProcessStartInfo
类并将其作为Start
类的Process
方法的参数传递,然后阅读{{ 3}} stream,将其存储在字符串中并根据需要显示Console.Write()
,MessageBox.Show()
等。
答案 2 :(得分:2)
我会检查Roslyn API。只要提供有效的C#o VB.NET代码,就可以按照自己的意愿行事。