コード例 #1
0
        public async Task <PagedList <Color> > GetColors(ColorQueryFilter filters)
        {
            var colores = await _unitOfWork.ColorRepository.GetAll();

            colores = filters.Nombre != null?colores.Where(x => x.Nombre.ToLower() == filters.Nombre.ToLower()) : colores;

            colores = filters.Descripcion != null?colores.Where(x => x.Descripcion.ToLower().Contains(filters.Descripcion.ToLower())) : colores;

            colores = filters.Estatus != null?colores.Where(x => x.Estatus == filters.Estatus) : colores;

            return(_pagedGenerator.GeneratePagedList(colores, filters));
        }
コード例 #2
0
        public async Task <ActionResult <IEnumerable <ColorDTO> > > Get([FromQuery] ColorQueryFilter filters)
        {
            var colores = await _colorService.GetColors(filters);

            var coloresDTO = _mapper.Map <IEnumerable <ColorDTO> >(colores);
            var metadata   = new MetaData().BuildMeta <Color>(colores, filters, Request.Path.Value, _uriService);
            var response   = new ApiResponse <IEnumerable <ColorDTO> >(coloresDTO)
            {
                Meta = metadata
            };

            Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(metadata));
            return(Ok(response));
        }