C#在线运行
首先,传回前端的c#在线代码,进行预编译,用CSharpCodeProvider这个方法。设置编译版本3.5 设置编译参数GenerateInMemory:是否在内存运行,True - memory generation, false - external file generation。 设置生成执行文件的类型GenerateExecutable:True - exe file generation, false - dll file generation。 编译后返回result结果。 异常处理:如果编译时发生错误,生成错误编号和错误文本信息并返回给前端。 找到代码中的Main方法,并运行(CompiledMethod.Invoke(null, null);) 返回结果。 运行示例 打开页面,有预写好的c#Hello World小程序 成功运行示例 错误运行示例,报错信息显示。 最后贴上前端ajax代码 $("#save").click(function (e) { e.preventDefault(); $.ajax({ type: 'POST', url: "CompileTest", data: { "CSharpCode": $("#CSharpCode").val() }, success: function (result) { $("#result").text