在.NET 4.6 / Roslyn中,Razor编译速度比4.5慢得多

时间:2016-03-07 08:37:25

标签: c# razor roslyn .net-4.6

我用下面的(伪)代码编译了一些Razor视图:

var host = new RazorEngineHost(new CSharpRazorCodeLanguage());
var engine = new RazorTemplateEngine(host);
var razorResult = engine.GenerateCode(reader, viewTypeName, "", null);
var compilerParameters = new CompilerParameters(assemblies.ToArray(), outputAssemblyName);
compilerParameters.TempFiles.KeepFiles = false;
var codeProvider = new CSharpCodeProvider();
var compilationResults = codeProvider.CompileAssemblyFromDom(compilerParameters, razorResult.GeneratedCode);

在.NET 4.5中,对于一个相当复杂的视图,这需要10秒。自升级到.NET 4.6以来,这需要几秒钟:(

我引用了Microsoft.CodeDom.Providers.DotNetCompilerPlatform

改变了什么?我有什么可以做的吗?

0 个答案:

没有答案