public PagedResponse <AmenityDto> Execute(AmenitySearch amenitySearch) { var amenitiesQuery = this.context.Amenities.AsQueryable(); if (amenitySearch.Name != null) { amenitiesQuery = amenitiesQuery.Where(a => a.Name.ToLower().Contains(amenitySearch.Name.ToLower())); } if (amenitySearch.Description != null) { amenitiesQuery = amenitiesQuery.Where(a => a.Description.ToLower().Contains(amenitySearch.Description.ToLower())); } var amenities = this.mapper.Map <List <AmenityDto> >(amenitiesQuery.FormatForPagedResponse(amenitySearch)); return(amenities.GeneratePagedResponse(amenitySearch, amenitiesQuery)); }
public IActionResult Get([FromQuery] AmenitySearch dto, [FromServices] IGetAmenitiesQuery getAmenitiesQuery) { return(Ok(_dispatcher.DispatchQuery(getAmenitiesQuery, dto))); }