private static RouteValidationResult MustHaveActionSegment(Segment[] segments, RouteValueDictionary defaults, RouteValueDictionary constraints) { var hasController = segments.OfType <ParameterSegment>().Any(x => x.ParameterName == "action") || defaults.GetOrDefault <object>("action") != null; return(hasController ? RouteValidationResult.Successful() : RouteValidationResult.Failure("The route does not contain an '{action}' segment, and no default action was provided.")); }
private static RouteValidationResult MustHaveViewModelSegment(Segment[] segments, RouteValueDictionary defaults, RouteValueDictionary constraints) { var hasViewModel = segments.OfType <ParameterSegment>().Any(x => x.ParameterName == "viewModel") || defaults.GetOrDefault <object>("viewModel") != null; return(hasViewModel ? RouteValidationResult.Successful() : RouteValidationResult.Failure("The route does not contain a '{viewModel}' segment, and no default ViewModel type was provided.")); }