Beispiel #1
0
        public IHttpActionResult Put(int id, [FromBody] ProductData value)
        {
            string            token      = GetAuthToken();
            IHttpActionResult validation = ValidateOwnerProduct(token, id);

            if (validation != null)
            {
                return(validation);
            }
            validation = ValidateProductData(value, token, true);
            if (validation != null)
            {
                return(validation);
            }
            DataAccessSoapClient ws = new DataAccessSoapClient();
            var binding             = ws.ChannelFactory.Endpoint.Binding as BasicHttpBinding;

            binding.MaxReceivedMessageSize = int.MaxValue;
            Product target = ws.FindProduct(new DataAccessWS.Security {
                BinarySecurityToken = token
            }, id);

            assignProperties(target, value, token);
            target.Id = id;
            Product updated = ws.UpdateProduct(new DataAccessWS.Security {
                BinarySecurityToken = token
            }, target);

            return(Ok(CreateRestProduct(updated)));
        }