public IList <Item> All(ItemIncludes includes) { using (var unitOfWork = new UnitOfWork()) { return(unitOfWork.Items.All(includes).ToList()); } }
public IEnumerable <Item> Find(Expression <Func <Item, bool> > predicate, ItemIncludes includes) { var query = Context.Set <Item>().AsQueryable(); //It needs to be a queryable to be able to build the expression query = AddIncludes(query, includes); return(query.Where(predicate).AsEnumerable()); //Add the where clause and return IEnumerable<Item> }
public Item Get(int id, ItemIncludes includes) { using (var unitOfWork = new UnitOfWork()) { return(unitOfWork.Items.Get(id, includes)); } }
public IEnumerable <Item> All(ItemIncludes includes) { var query = Context.Set <Item>().AsQueryable(); //It needs to be a queryable to be able to build the expression query = AddIncludes(query, includes); return(query.AsEnumerable()); }
public Item Get(int id, ItemIncludes includes) { var query = Context.Set <Item>().AsQueryable(); //It needs to be a queryable to be able to build the expression query = AddIncludes(query, includes); query = query.Where(i => i.Id == id); //Add the where clause return(query.FirstOrDefault()); }
public IList <Item> All(ItemIncludes includes) { try { using (var unitOfWork = unitOfWorkFactory.CreateInstance()) { return(unitOfWork.Items.All(includes).ToList()); } } catch (Exception ex) { throw ex; } }
public Item Get(int id, ItemIncludes includes) { try { using (var unitOfWork = unitOfWorkFactory.CreateInstance()) { return(unitOfWork.Items.Get(id, includes)); } } catch (Exception ex) { throw ex; } }
/// <summary> /// Adds the DbContext includes based on the booleans set in the Includes object /// </summary> /// <param name="query"></param> /// <param name="includes"></param> /// <returns></returns> private IQueryable <Item> AddIncludes(IQueryable <Item> query, ItemIncludes includes) { if (includes == null) { return(query); } if (includes.RentalItems) { query = query.Include(i => i.RentalItems); } if (includes.RentalItemsRentalOrderLines) { query = query.Include(i => i.RentalItems.Select(ri => ri.RentalOrderLines)); } return(query); }