此问题已被多次询问,但我仍不明白为什么我一直收到此错误。该操作无法完成,因为已经配置了DbContext
在我的控制器我有这样的方法:
//
// POST : /ObjectProducer/Edit/5
[HttpPost]
public ActionResult Edit(OBJECT_PRODUCER _objProd)
{
if (ModelState.IsValid)
{
m_Db.Entry(_objProd).State = EntityState.Modified;
m_Db.SaveChanges();
return RedirectToAction("SearchIndex");
}
return View(_objProd);
}
但是,当我打的m_Db.Entry(_objProd).State = EntityState.Modified;
线时,会出现错误。任何人都可以向我解释什么是错的?
**编辑**
下面是其引发的 “编辑” 的方法(所述的 “GET” 方法)
//
// GET : /PriceProvider/Edit
public ActionResult Edit(int id = 0)
{
OBJECT_PRODUCER objProd = m_ProductManager.GetObjProdByID(id);
if (objProd == null)
{
ViewData["ErrorMessage"] = m_NoDataFound;
}
return View(objProd);
}
其中或这是什么'OBJECT_PRODUCER _objProd',为什么你现在使用下面的代码变量..什么是'_objProd' – MethodMan 2013-04-05 16:57:29
你也可能要张贴的控制器代码的其余部分。我想我知道什么是错的,但我需要看到更多的代码才能确定。 – IronMan84 2013-04-05 16:59:28
OBJECT_PRODUCER是从数据库创建的类,_objProd是用户单击“提交”按钮后从视图返回的对象,目的是获取此对象并将修改保存在数据库中。 – hsim 2013-04-05 16:59:47