C#Reflection CompileAssemblyFromSource slow

时间:2016-06-09 10:29:28

标签: c# reflection

我在反思方面遇到了一些问题:

在我的代码中,我从数据库动态加载c#代码,编译它并从该库加载一些对象。一切正常,但CompileAssemblyFromSource编译的速度非常慢(大约60秒)。

我尝试使用Visual Studio 2015编译相同的c#代码,构建阶段花费不到1秒......

怎么了? CompileAssemblyFromSource是如此之慢?

1 个答案:

答案 0 :(得分:0)

无论GenerateInMemory是否设置为true,都会在TEMP目录中生成代码。通过将CompilerParameters中的Tempfiles属性设置为不存在的驱动器/目录,这不会发生:

     parameters.TempFiles = new TempFileCollection(@"B:\NonExistingDirectory");