public IQueryable <TEntity> QueryableQuery(QueryDelegate query = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) { FailIf(dataContext == null, "Parameter (dataContext) cannot be null"); var queryable = Queryable(options, dataContext); return(query != null?query(queryable) : queryable); }
//Queryable public IQueryable <TEntity> Queryable(LoadOptionsDelegate options = null, TDataContext dataContext = null) { FailIf(dataContext == null, "Parameter (dataContext) cannot be null"); var queryable = dataContext.GetTable <TEntity>().AsQueryable(); if (options != null) { dataContext.LoadOptions = options(new LoadOptions()).Options; } return(queryable); }
public List <TEntity> ListWhere(Expression <Func <TEntity, bool> > where = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => QueryableWhere(where, options, dc).ToList());
public List <TEntity> ListQuery(QueryDelegate query = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => QueryableQuery(query, options, dc).ToList());
public TEntity[] ArrayQuery(QueryDelegate query = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => QueryableQuery(query, options, dc).ToArray());
public long CountQuery(QueryDelegate query = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => QueryableQuery(query, options, dc).LongCount());
public bool AnyQuery(QueryDelegate query = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => QueryableQuery(query, options, dc).Any());
public TEntity LastOrDefaultWhere(Expression <Func <TEntity, bool> > where = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => QueryableWhere(where, options, dc).LastOrDefault());
public TEntity LastOrDefaultQuery(QueryDelegate query = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => QueryableQuery(query, options, dc).LastOrDefault());
//FirstOrDefault public TEntity FirstOrDefault(LoadOptionsDelegate options = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => Queryable(options, dc).FirstOrDefault());
public ResultSet <TEntity> ResultSetWhere(Expression <Func <TEntity, bool> > where = null, LoadOptionsDelegate options = null, int?pageSize = null, int?pageIndex = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => new ResultSet <TEntity>(QueryableWhere(where, options, dc), pageSize, pageIndex));
public ResultSet <TEntity> ResultSetQuery(QueryDelegate query = null, LoadOptionsDelegate options = null, int?pageSize = null, int?pageIndex = null, TDataContext dataContext = null) => DataContextScope(false, dataContext, dc => new ResultSet <TEntity>(QueryableQuery(query, options, dc), pageSize, pageIndex));
public IQueryable <TEntity> QueryableWhere(Expression <Func <TEntity, bool> > where = null, LoadOptionsDelegate options = null, TDataContext dataContext = null) { FailIf(dataContext == null, "Parameter (dataContext) cannot be null"); var queryable = Queryable(options, dataContext); return(where != null?queryable.Where(where) : queryable); }