Beispiel #1
0
        public static ODataQueryOptions GetOptions(string filter = null)
        {
            var factory = new QueryOptionsFactory(GetModel(), typeof(SampleDto));

            factory.Filter = filter;
            return(factory.Get());
        }
        public static ODataQueryOptions AdjustOptions(ODataQueryOptions options, IEnumerable <DynamoContext> props)
        {
            ODataQueryOptions newOptions = null;

            if (options.Filter != null) // dyn filter needs adjustment
            {                           // string filterRawValue = options.Filter.RawValue;
                var factory = new QueryOptionsFactory(options);
                factory.Filter = options.Filter?.FilterClause.Expression.Accept(new DynamoQueryNodeVisitor(props));
                if (options.SelectExpand != null)
                {
                    factory.Expand = options.SelectExpand?.RawExpand;
                    factory.Select = options.SelectExpand?.RawSelect;
                }
                factory.Top   = options.Top?.RawValue;
                factory.Skip  = options.Skip?.RawValue;
                factory.Count = options.Count?.RawValue;
                newOptions    = factory.Get();
            }
            return(newOptions ?? options);
        }