protected override IQuery <Corporation> ApplyWhereClause(IQuery <Corporation> query, CorporationFilterDTO filter) { var predicates = new List <IPredicate>(); if (!string.IsNullOrEmpty(filter.SearchedLocation)) { predicates.Add(new SimplePredicate(nameof(Corporation.Address), ValueComparingOperator.Equal, filter.SearchedLocation)); } if (filter.CorporationNames != null && filter.CorporationNames.Length != 0) { var predicate = new List <IPredicate>(filter.CorporationNames .Select(name => new SimplePredicate( nameof(Corporation.Name), ValueComparingOperator.Equal, name))); predicates.Add(new CompositePredicate(predicate)); } return(query.Where(new CompositePredicate(predicates))); }
public async Task <QueryResultDTO <CorporationDTO, CorporationFilterDTO> > GetCorporationsAsync(CorporationFilterDTO filter) { using (UnitOfWorkProvider.Create()) { return(await corporationService.ListCorporationsAsync(filter)); } }
private IQuery <Corporation> GetAll(IQuery <Corporation> query, CorporationFilterDTO filter) { return(query.Where(new SimplePredicate(nameof(Corporation.UserRole), ValueComparingOperator.Equal, filter.UserRole))); }