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); }