From eb88b28443dbed463a868edff3fcb654a7517f69 Mon Sep 17 00:00:00 2001 From: Renaud Paquay Date: Wed, 25 May 2011 13:28:47 -0700 Subject: [PATCH] PERF: Decrease # of virtual path dependencies for Razor views Lots of duplicate virtual paths were added, as they came from different sources. --HG-- branch : 1.x --- .../Mvc/ViewEngines/Razor/IRazorCompilationEvents.cs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/Orchard/Mvc/ViewEngines/Razor/IRazorCompilationEvents.cs b/src/Orchard/Mvc/ViewEngines/Razor/IRazorCompilationEvents.cs index 385988df1..302726714 100644 --- a/src/Orchard/Mvc/ViewEngines/Razor/IRazorCompilationEvents.cs +++ b/src/Orchard/Mvc/ViewEngines/Razor/IRazorCompilationEvents.cs @@ -85,9 +85,15 @@ namespace Orchard.Mvc.ViewEngines.Razor { } } - foreach (var virtualDependency in entry.dependencies) { - provider.AddVirtualPathDependency(virtualDependency); - } + } + + //PERF: Ensure each virtual path is present only once in the list of dependencies + var virtualDependencies = entries + .SelectMany(e => e.dependencies) + .Distinct(StringComparer.OrdinalIgnoreCase); + + foreach (var virtualDependency in virtualDependencies) { + provider.AddVirtualPathDependency(virtualDependency); } }