public async Task <IActionResult> Edit(int id, [Bind("IdProducto,NombreProducto,DescripcionPproducto,Anno,Valor,IdMarcaProducto,IdTienda,IdCategoria")] data.Productos productos) { if (id != productos.IdProducto) { return(NotFound()); } if (ModelState.IsValid) { try { using (var cl = new HttpClient()) { cl.BaseAddress = new Uri(baseurl); var content = JsonConvert.SerializeObject(productos); var buffer = System.Text.Encoding.UTF8.GetBytes(content); var byteContent = new ByteArrayContent(buffer); byteContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"); var postTask = cl.PutAsync("api/Productos/" + id, byteContent).Result; if (postTask.IsSuccessStatusCode) { return(RedirectToAction("Index")); } } } catch (Exception) { var aux2 = GetById(id); if (aux2 == null) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["IdCategoria"] = new SelectList(getAllCategoriaProductos(), "IdCategoria", "Categoria", productos.IdCategoria); ViewData["IdMarcaProducto"] = new SelectList(getAllMarcaProductos(), "IdMarca", "MarcaProducto", productos.IdMarcaProducto); ViewData["IdTienda"] = new SelectList(getAllTiendas(), "IdTienda", "DescripcionTienda", productos.IdTienda); return(View(productos)); }
private data.Productos GetById(int?id) { data.Productos aux = new data.Productos(); using (var cl = new HttpClient()) { cl.BaseAddress = new Uri(baseurl); cl.DefaultRequestHeaders.Clear(); cl.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage res = cl.GetAsync("api/Productos/" + id).Result; if (res.IsSuccessStatusCode) { var auxres = res.Content.ReadAsStringAsync().Result; aux = JsonConvert.DeserializeObject <data.Productos>(auxres); } } return(aux); }