コード例 #1
0
        public PagedResponse <RoleDTO> Execute(SearchRoleDTO dto)
        {
            var rolesQuery = _context.Roles.AsQueryable();

            if (!string.IsNullOrEmpty(dto.Name) || !string.IsNullOrWhiteSpace(dto.Name))
            {
                rolesQuery = rolesQuery.Where(r => r.Name.ToLower().Contains(dto.Name.ToLower()));
            }

            var skipCount = dto.PerPage * (dto.Page - 1);

            var roles = _mapper.Map <List <RoleDTO> >(rolesQuery.Skip(skipCount).Take(dto.PerPage).ToList());

            var reponse = new PagedResponse <RoleDTO>
            {
                CurrentPage  = dto.Page,
                ItemsPerPage = dto.PerPage,
                TotalCount   = rolesQuery.Count(),
                Items        = roles
            };

            return(reponse);
        }
コード例 #2
0
 public IActionResult SearchByRole([FromBody] SearchRoleDTO searchRole)
 {
     return(Ok(userManager.ByRole(searchRole.role)));
 }
コード例 #3
0
 public IActionResult Get([FromQuery] SearchRoleDTO search, [FromServices] IGetRoleQuery query)
 {
     return(Ok(_executor.ExecuteQuery(query, search)));
 }