Example #1
0
 public async Task <QueryResultDTO <UnregisteredUserDTO, UnregisteredUserFilterDTO> > GetUnregisteredsAsync(UnregisteredUserFilterDTO filter)
 {
     using (UnitOfWorkProvider.Create())
     {
         return(await unregisteredService.ListUnregisteredsAsync(filter));
     }
 }
        protected override IQuery<UnregisteredUser> ApplyWhereClause(IQuery<UnregisteredUser> query, UnregisteredUserFilterDTO filter)
        {
            var predicates = new List<IPredicate>();

            if (!string.IsNullOrEmpty(filter.SearchedLocation))
            {
                predicates.Add(new SimplePredicate(nameof(UnregisteredUser.Location), ValueComparingOperator.Equal, filter.SearchedLocation));
            }

            if (!string.IsNullOrEmpty(filter.SearchedEmail))
            {
                predicates.Add(new SimplePredicate(nameof(UnregisteredUser.Email), ValueComparingOperator.Equal, filter.SearchedEmail));
            }

            if (!string.IsNullOrEmpty(filter.SearchedName))
            {
                predicates.Add(new SimplePredicate(nameof(UnregisteredUser.Name), ValueComparingOperator.Equal, filter.SearchedName));
            }

            predicates.Add(new SimplePredicate(nameof(UnregisteredUser.UserRole), ValueComparingOperator.Equal, filter.UserRole));

            return query.Where(new CompositePredicate(predicates));
        }