我在文件中(或在文本字符串中)有一个C#源代码。如何使用反射发射来生成和执行此代码?
有很多例子让人们生成一个类,然后添加一个方法等,但是我需要顶级的C#编译代码,几千字节。
答案 0 :(得分:0)
Reflection.Emit用于处理IL级别的代码,它对如何编译C#源代码一无所知,所以你不能将它用于此。
您可以使用的是CodeDOM,特别是the CSharpCodeProvider
class及其CompileAssemblyFromFile ()
或CompileAssemblyFromSource()
方法。