我正在阅读一本书Pro ASP.NET MVC3 Framework - Freeman Sandersan,其中展示了如何在网上商店进行简单的管理。问题是当我尝试保存它不保存的一种产品的更改时。
编辑视图:
@using (Html.BeginForm()) {
@Html.EditorForModel()
<input type="submit" value="Save" />}
编辑方法:
[HttpPost]
public ActionResult Edit(Product product)
{
if (ModelState.IsValid)
{
repository.SaveProduct(product);
TempData["message"] = string.Format("{0} has been saved", product.Name);
return RedirectToAction("Index");
}
// there is something wrong with the data values
return View(product);
}
保存产品方法:
private EFDbContext context=new EFDbContext();
public void SaveProduct(Product product)
{
if (product.ProductID == 0)
{
context.Products.Add(product);
}
context.SaveChanges();
}
编辑结果:我将产品名称更改为“Kayakkkkkkkkkk”。临时消息显示保存已完成,但产品名称仍为“Kayak”。