IODataTranslationResult IODataClientQueryPipeline.Translate(Expression expression, ODataQueryOptions options) { Throw.IfNull(expression, "expression"); Throw.IfNull(options, "options"); var translator = new LinqToODataTranslator(); var oDataQuery = translator.Translate(expression, out var rootQuery, out var postProcessor); Throw.If(oDataQuery.Kind != ODataExpressionKind.Query, "expression: did not translate to a query expression"); var oDataQueryWithOptions = ((ODataQueryExpression)oDataQuery).Update(format: options.Format, inlineCount: options.InlineCount ?? ((ODataQueryExpression)oDataQuery).InlineCount); return(new TranslationResult(rootQuery, oDataQueryWithOptions, r => postProcessor(r.Values, r.InlineCount))); }
public MemberAndParameterTranslator(LinqToODataTranslator translator) { this._translator = translator; }