/// <summary> /// Executes query expression and returns typed result. /// </summary> /// <typeparam name="TResult">Type of result.</typeparam> /// <param name="expression">Query expression.</param> /// <returns>Query result.</returns> public TResult Execute <TResult>(Expression expression) { return(QueryProvider.Execute <TResult>(expression)); }
/// <summary> /// the query '(from o in Orders select o).First()' enters here /// </summary> S IQueryProvider.Execute <S>(Expression expression) { return(_queryProvider.Execute <S>(expression)); }
/// <summary> /// Executes query expression. /// </summary> /// <param name="expression">Query expression.</param> /// <returns>Query result.</returns> public object Execute(Expression expression) { return(QueryProvider.Execute(expression)); }
protected override object ExecuteCore(QueryProvider provider, Expression expression) => provider.Execute <T>(expression) !;