private void SetupQueryVisitorContextDefaults(IQueryVisitorContext context)
        {
            if (_config.DefaultAliasResolver != null && context.GetRootAliasResolver() == null)
            {
                context.SetRootAliasResolver(_config.DefaultAliasResolver);
            }

            if (_config.DefaultValidator != null && context.GetValidator() == null)
            {
                context.SetValidator(_config.DefaultValidator);
            }
        }
示例#2
0
        public override async Task <IQueryNode> AcceptAsync(IQueryNode node, IQueryVisitorContext context)
        {
            await node.AcceptAsync(this, context).ConfigureAwait(false);

            var validationInfo = context.GetValidationInfo();
            var validator      = context.GetValidator();

            if (validator != null && ShouldThrow && !await validator(validationInfo))
            {
                throw new QueryValidationException();
            }

            return(node);
        }
示例#3
0
        private void SetupQueryVisitorContextDefaults(IQueryVisitorContext context)
        {
            if (_config.FieldResolver != null && context.GetFieldResolver() == null)
            {
                context.SetFieldResolver(_config.FieldResolver);
            }

            if (_config.MappingResolver != null && context.GetMappingResolver() == null)
            {
                context.SetMappingResolver(_config.MappingResolver);
            }

            if (_config.Validator != null && context.GetValidator() == null)
            {
                context.SetValidator(_config.Validator);
            }
        }