public ReusableQueryable(IPersistenceQueryProvider provider, Expression expression) { if (!typeof(IQueryable <T>).IsAssignableFrom(expression.Type) && !(expression is SqlProjectionExpression)) { throw new ArgumentOutOfRangeException(nameof(expression)); } this.PersistenceQueryProvider = provider; this.Expression = expression; }
protected virtual void Initialize(IPersistenceQueryProvider provider, Expression expression) { this.PersistenceQueryProvider = provider; this.Expression = expression ?? Expression.Constant(this); }
public ReusableQueryable(IPersistenceQueryProvider provider) { this.PersistenceQueryProvider = provider; this.Expression = Expression.Constant(this); }