diff --git a/src/Microsoft.AspNet.Mvc.Core/Areas/ReflectedRouteConstraintsActionDescriptorProvider.cs b/src/Microsoft.AspNet.Mvc.Core/Areas/ReflectedRouteConstraintsActionDescriptorProvider.cs index 425385cc2a..c993be27f0 100644 --- a/src/Microsoft.AspNet.Mvc.Core/Areas/ReflectedRouteConstraintsActionDescriptorProvider.cs +++ b/src/Microsoft.AspNet.Mvc.Core/Areas/ReflectedRouteConstraintsActionDescriptorProvider.cs @@ -17,40 +17,37 @@ namespace Microsoft.AspNet.Mvc var removalConstraints = new HashSet(StringComparer.OrdinalIgnoreCase); // Iterate all the Reflected Action Descriptor providers and add area or other route constraints - if (context.Results != null) + foreach (var actionDescriptor in context.Results.OfType()) { - foreach (var actionDescriptor in context.Results.OfType()) + var routeConstraints = actionDescriptor. + ControllerDescriptor. + ControllerTypeInfo. + GetCustomAttributes(). + ToArray(); + + foreach (var routeConstraint in routeConstraints) { - var routeConstraints = actionDescriptor. - ControllerDescriptor. - ControllerTypeInfo. - GetCustomAttributes(). - ToArray(); - - foreach (var routeConstraint in routeConstraints) + if (routeConstraint.BlockNonAttributedActions) { - if (routeConstraint.BlockNonAttributedActions) - { - removalConstraints.Add(routeConstraint.RouteKey); - } + removalConstraints.Add(routeConstraint.RouteKey); + } - // Skip on duplicates - if (!ContainsKey(actionDescriptor, routeConstraint.RouteKey)) - { - actionDescriptor.RouteConstraints.Add(new RouteDataActionConstraint( - routeConstraint.RouteKey, routeConstraint.RouteValue)); - } + // Skip duplicates + if (!HasConstraint(actionDescriptor, routeConstraint.RouteKey)) + { + actionDescriptor.RouteConstraints.Add(new RouteDataActionConstraint( + routeConstraint.RouteKey, routeConstraint.RouteValue)); } } + } - foreach (var actionDescriptor in context.Results.OfType()) + foreach (var actionDescriptor in context.Results.OfType()) + { + foreach (var key in removalConstraints) { - foreach (var key in removalConstraints) + if (!HasConstraint(actionDescriptor, key)) { - if (!ContainsKey(actionDescriptor, key)) - { - actionDescriptor.RouteConstraints.Add(new RouteDataActionConstraint(key, RouteKeyHandling.DenyKey)); - } + actionDescriptor.RouteConstraints.Add(new RouteDataActionConstraint(key, RouteKeyHandling.DenyKey)); } } } @@ -58,7 +55,7 @@ namespace Microsoft.AspNet.Mvc callNext(); } - private bool ContainsKey(ActionDescriptor actionDescript, string routeKey) + private bool HasConstraint(ActionDescriptor actionDescript, string routeKey) { return actionDescript.RouteConstraints.Any(rc => string.Equals(rc.RouteKey, routeKey, StringComparison.OrdinalIgnoreCase)); } diff --git a/src/Microsoft.AspNet.Mvc.Core/DefaultControllerFactory.cs b/src/Microsoft.AspNet.Mvc.Core/DefaultControllerFactory.cs index ba5fa264a3..56b93404df 100644 --- a/src/Microsoft.AspNet.Mvc.Core/DefaultControllerFactory.cs +++ b/src/Microsoft.AspNet.Mvc.Core/DefaultControllerFactory.cs @@ -4,7 +4,6 @@ using System.Reflection; using Microsoft.AspNet.Abstractions; using Microsoft.AspNet.DependencyInjection; using Microsoft.AspNet.Mvc.ModelBinding; -using Microsoft.AspNet.Routing; using Microsoft.AspNet.Mvc.Rendering; namespace Microsoft.AspNet.Mvc diff --git a/src/Microsoft.AspNet.Mvc.Razor/ViewEngine/RazorViewEngine.cs b/src/Microsoft.AspNet.Mvc.Razor/ViewEngine/RazorViewEngine.cs index 02ddd056ab..ea19ea43ae 100644 --- a/src/Microsoft.AspNet.Mvc.Razor/ViewEngine/RazorViewEngine.cs +++ b/src/Microsoft.AspNet.Mvc.Razor/ViewEngine/RazorViewEngine.cs @@ -65,7 +65,7 @@ namespace Microsoft.AspNet.Mvc.Razor var searchedLocations = new List(_viewLocationFormats.Length); for (int i = 0; i < _viewLocationFormats.Length; i++) { - string path = String.Format(CultureInfo.InvariantCulture, _viewLocationFormats[i], viewName, controllerName, areaName); + var path = String.Format(CultureInfo.InvariantCulture, _viewLocationFormats[i], viewName, controllerName, areaName); IView view = await _virtualPathFactory.CreateInstance(path); if (view != null) {