CompileAssemblyFromFile:我可以在富文本框中提供源吗?

时间:2012-04-27 20:41:26

标签: c# codedom

使用CodeDOM我能够编译我在单独文件中编写的源代码:

    CompilerResults results = codeCompiler.CompileAssemblyFromFile(parameters, @"C:\MyScript.cs");
    results.CompiledAssembly.GetType("Script").GetMethod("Main").Invoke(null, null);

有没有办法代替从文件中读取源代码 - MyScript.cs - 所以我可以在表单上放一个富文本框并将代码放在那里?

1 个答案:

答案 0 :(得分:2)

查看CSharpCodeProvider的文档:它包含一个方法CompileAssemblyFromSource(),它接受​​一个或多个包含要编译的代码的字符串。

因此,您的代码可能如下所示:

CompilerResults results = codeCompiler.CompileAssemblyFromSource(
    parameters, codeFromTextBox);