示例#1
0
 public static void RouteValueDoesNotMatchConstraint(
     this ILogger logger,
     object routeValue,
     string routeKey,
     IDispatcherValueConstraint routeConstraint)
 {
     _routeValueDoesNotMatchConstraint(logger, routeValue, routeKey, routeConstraint, null);
 }
示例#2
0
        public OptionalDispatcherValueConstraint(IDispatcherValueConstraint innerConstraint)
        {
            if (innerConstraint == null)
            {
                throw new ArgumentNullException(nameof(innerConstraint));
            }

            InnerConstraint = innerConstraint;
        }
示例#3
0
        private void Add(string key, IDispatcherValueConstraint constraint)
        {
            if (!_constraints.TryGetValue(key, out var list))
            {
                list = new List <IDispatcherValueConstraint>();
                _constraints.Add(key, list);
            }

            list.Add(constraint);
        }
示例#4
0
        private static bool TestConstraint(IDispatcherValueConstraint constraint, DispatcherValueCollection values, string routeKey)
        {
            var httpContext       = new DefaultHttpContext();
            var constraintPurpose = ConstraintPurpose.IncomingRequest;

            var dispatcherValueConstraintContext = new DispatcherValueConstraintContext(httpContext, values, constraintPurpose)
            {
                Key = routeKey
            };

            return(constraint.Match(dispatcherValueConstraintContext));
        }
        private static bool TestConstraint(IDispatcherValueConstraint constraint, object value, Action <IMatcher> routeConfig = null)
        {
            var httpContext = new DefaultHttpContext();
            var values      = new DispatcherValueCollection()
            {
                { "fake", value }
            };
            var constraintPurpose = ConstraintPurpose.IncomingRequest;

            var dispatcherValueConstraintContext = new DispatcherValueConstraintContext(httpContext, values, constraintPurpose);

            return(constraint.Match(dispatcherValueConstraintContext));
        }