예제 #1
0
 public HttpResponseMessage DeleteProduct(Product product)
 {
     // then save it
     if (_productService.DeleteProduct(DomainAndUIProduct.FromUIToDomain(product)))
     {
         return Request.CreateResponse(HttpStatusCode.OK, product);
     }
     else
     {
         return Request.CreateResponse(HttpStatusCode.ExpectationFailed);
     }
 }
예제 #2
0
        // new product
        public HttpResponseMessage PostProduct(Product item)
        {
            var _product = _productService.AddProduct(DomainAndUIProduct.FromUIToDomain(item));

            if (_product != null)
            {
                var response = Request.CreateResponse<Product>(HttpStatusCode.Created, DomainAndUIProduct.FromDomainToUI(_product));

              //  string uri = Url.Link("DefaultApi", new { id = item.Id });
               // response.Headers.Location = new Uri(uri);

                return response;
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.ExpectationFailed);
            }
        }
예제 #3
0
        public HttpResponseMessage PutProduct(Product product)
        {
            // to get the product first
            var _product = _productService.GetProductByID(product.Id);

            if (_product != null)
            {
                // only update the name and price
                _product.ProductName = product.Name;
                _product.UnitPrice = product.Price;

                // then save it
                if (_productService.UpdateProduct(_product))
                {
                    return Request.CreateResponse(HttpStatusCode.ExpectationFailed);
                }
                else
                {
                    return Request.CreateResponse(HttpStatusCode.OK, product);
                    // will return result as a json object: {"Id":79,"Name":"testr","CategoryID":null,"Category":null,"Price":14.0}

                }
            }
            else
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }
        }