public async Task <IActionResult> HacerPedido(int id) { List <Producto> ListaProductos; Cliente cliente = JsonConvert.DeserializeObject <Cliente>(HttpContext.Session.GetString("User")); string carrito = HttpContext.Session.GetString("carrito"); if (carrito != null) { ListaProductos = JsonConvert.DeserializeObject <List <Producto> >(carrito); Pedido pedido = new Pedido(); pedido.Fecha = DateTime.Now; pedido.GenerateId(cliente.Email); pedido.ListaProductos = ListaProductos; if (await _dbAccess.HacerPedido(pedido, cliente, id)) { cliente = await _dbAccess.CargarPedidos(cliente); HttpContext.Session.Remove("carrito"); HttpContext.Session.SetString("User", JsonConvert.SerializeObject(cliente)); return(RedirectToAction("UserPanel")); } } return(RedirectToAction("carrito")); }