【发布时间】:2013-03-06 20:03:43
【问题描述】:
我需要创建新对象并将其添加到数据库。首先,我将唯一 ID 设置为 Product(我的实体)。并返回用户可以设置其他字段的视图。
public ViewResult Create()
{
var product = new Product { ProductID = GetFreeId() };
return View("Edit",product);
}
观点:
@using (Html.BeginForm()) {
@Html.EditorForModel()
<input type="submit" value="Save" />}
然后通过控制器我们来到这个方法:
public void AddProduct(Product product)
{
context.Products.Add(product);
context.SaveChanges();
}
如果我在最后一个方法处设置断点,我会看到product.ProductID=10,但在string context.SaveChanges(); 上会出现异常:
无法插入 ProductID=null 的实体。
哪里出错了?
【问题讨论】:
-
只是想知道您回到 AddProduct actionresult 吗?
-
是的。 [HttpPost] public ActionResult Create(Product product) { if (ModelState.IsValid) { repository.AddProduct(product);
标签: asp.net-mvc entity-framework