public async Task <IActionResult> List(
            [FromQuery] FilterCityQueryDto filterQueryDto)
        {
            var result = await _unitOfWork.CityService.List(filterQueryDto);

            if (filterQueryDto.Page == null && filterQueryDto.Limit == null)
            {
                return(Ok(result.Data.Items));
            }
            return(result.ApiResult);
        }
        public async Task <Result <PagedList <CityDto> > > List(FilterCityQueryDto filterQueryDto)
        {
            var cities = await WhereAsyncAsNoTracking(c =>
                                                      (string.IsNullOrEmpty(filterQueryDto.Keyword) ||
                                                       c.Name.ToLower().Contains(filterQueryDto.Keyword.ToLower()) &&
                                                       (string.IsNullOrEmpty(filterQueryDto.Keyword.ToLower()) ||
                                                        c.County.Name.ToLower().Contains(filterQueryDto.Keyword.ToLower()))), filterQueryDto,
                                                      c => c.County, c => c.Regions);

            return(Result <PagedList <CityDto> > .SuccessFull(cities.MapTo <CityDto>(_mapper)));
        }