Пример #1
0
        public List <FilterNode> ParseFilters([Required, FromBody] ParseFiltersRequest request)
        {
            var queryName = QueryLogic.ToQueryName(request.queryKey);
            var qd        = QueryLogic.Queries.QueryDescription(queryName);
            var options   = SubTokensOptions.CanAnyAll | SubTokensOptions.CanElement | (request.canAggregate ? SubTokensOptions.CanAggregate : 0);

            using (request.entity != null ? CurrentEntityConverter.SetCurrentEntity(request.entity.RetrieveAndRemember()) : null)
            {
                var result = ParseFilterInternal(request.filters, qd, options, 0).ToList();

                return(result);
            }
        }
Пример #2
0
        public List <FilterTS> ParseFilters(ParseFiltersRequest request)
        {
            var queryName = QueryLogic.ToQueryName(request.queryKey);
            var qd        = DynamicQueryManager.Current.QueryDescription(queryName);
            var options   = SubTokensOptions.CanAnyAll | SubTokensOptions.CanElement | (request.canAggregate ? SubTokensOptions.CanAggregate : 0);

            using (request.entity != null ? CurrentEntityConverter.SetCurrentEntity(request.entity.Retrieve()) : null)
            {
                var result = request.filters
                             .Select(f => new FilterTS
                {
                    token     = f.tokenString,
                    operation = f.operation,
                    value     = FilterValueConverter.Parse(f.valueString, QueryUtils.Parse(f.tokenString, qd, options).Type, f.operation.IsList())
                })
                             .ToList();

                return(result);
            }
        }
Пример #3
0
        public List<FilterTS> ParseFilters(ParseFiltersRequest request)
        {
            var queryName = QueryLogic.ToQueryName(request.queryKey);
            var qd = DynamicQueryManager.Current.QueryDescription(queryName);
            var options = SubTokensOptions.CanAnyAll | SubTokensOptions.CanElement | (request.canAggregate ? SubTokensOptions.CanAggregate : 0);

            using (request.entity != null ? CurrentEntityConverter.SetCurrentEntity(request.entity.Retrieve()) : null)
            {
                var result = request.filters
                        .Select(f => new FilterTS
                        {
                            token = f.tokenString,
                            operation = f.operation,
                            value = FilterValueConverter.Parse(f.valueString, QueryUtils.Parse(f.tokenString, qd, options).Type, f.operation.IsList())
                        })
                        .ToList();

                return result;
            }
        }