public void ExecuteProgram(string code)
{
try
{
CodeDomProvider cdp = CodeDomProvider.CreateProvider("C#");
CompilerParameters cps = new CompilerParameters();
//添加DLL引用,设置参数
var reference = Assembly.GetExecutingAssembly().GetReferencedAssemblies();
string[] dll = new string[reference.Length];
for (int i = 0; i < reference.Length; i++)
{
dll[i] = reference[i].Name + ".dll";
}
cps.ReferencedAssemblies.AddRange(dll);
cps.GenerateInMemory = true;
cps.GenerateExecutable = false;
string codeTxt = code; //这里就是要编译的代码
//编译
CompilerResults rst = cdp.CompileAssemblyFromSource(cps, codeTxt);
if (rst.Errors.HasErrors)
{
for (int i = 0; i <