コード例 #1
0
        public HttpResponseMessage GetById(HttpRequestMessage request, int id)
        {
            return(CreateHttpResponse(request, () =>
            {
                var model = _productService.GetById(id);

                var responseData = Mapper.Map <Product, ProductViewModel>(model);

                var listMaterial = _materialService.GetListMaterialByProductId(id);
                responseData.Materials = Mapper.Map <IEnumerable <Material>, IEnumerable <MaterialViewModel> >(listMaterial);

                var listColor = _colorService.GetListColorByProductId(id);
                responseData.Colors = Mapper.Map <IEnumerable <Color>, IEnumerable <ColorViewModel> >(listColor);

                var listSize = _sizeService.GetListSizeByProductId(id);
                responseData.Sizes = Mapper.Map <IEnumerable <Size>, IEnumerable <SizeViewModel> >(listSize);

                var listHeight = _heightService.GetListHeightByProductId(id);
                responseData.Heights = Mapper.Map <IEnumerable <Height>, IEnumerable <HeightViewModel> >(listHeight);

                var listType = _typeService.GetListTypeByProductId(id);
                responseData.Types = Mapper.Map <IEnumerable <Model.Models.Type>, IEnumerable <TypeViewModel> >(listType);

                var listHeel = _heelService.GetListHeelByProductId(id);
                responseData.Heels = Mapper.Map <IEnumerable <Heel>, IEnumerable <HeelViewModel> >(listHeel);

                var response = request.CreateResponse(HttpStatusCode.OK, responseData);

                return response;
            }));
        }