/// <summary> /// Initialize a new instance of the <see cref="EfDbContextManager"/> class. /// </summary> /// <param name="args">The <see cref="IEfDbArgs"/>.</param> public EfDbContextManager(IEfDbArgs args) { if (args != null && args.DbContext != null) { DbContext = (TDbContext)args.DbContext; } else { _closeAndDispose = true; DbContext = new TDbContext(); } }
private IQueryable <EfModel.Person> GetByArgsOnQuery(IQueryable <EfModel.Person> q, PersonArgs?args, IEfDbArgs efArgs) { _ef.WithWildcard(args?.FirstName, (w) => q = q.Where(x => EF.Functions.Like(x.FirstName, w))); _ef.WithWildcard(args?.LastName, (w) => q = q.Where(x => EF.Functions.Like(x.LastName, w))); _ef.With(args?.Genders, () => q = q.Where(x => args !.Genders !.ToCodeList().Contains(x.GenderCode))); return(q.OrderBy(x => x.LastName).ThenBy(x => x.FirstName)); }
private IQueryable <EfModel.Person> GetByArgsWithEfOnQuery(IQueryable <EfModel.Person> q, PersonArgs args, IEfDbArgs efArgs) { EfDb.WithWildcard(args?.FirstName, (w) => q = q.Where(x => EF.Functions.Like(x.FirstName, w))); EfDb.WithWildcard(args?.LastName, (w) => q = q.Where(x => EF.Functions.Like(x.LastName, w))); EfDb.With(args?.Genders, () => q = q.Where(x => args.Genders.ToGuidIdList().Contains(x.GenderId.Value))); return(q.OrderBy(x => x.LastName).ThenBy(x => x.FirstName)); }