Сначала вы должны загрузить Product
из базы данных, если хотите использовать ApplyPropertyChanges
:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(Product productToEdit)
{
try
{
entities.Products.Single(p => p.Id == productToEdit.Id);
entities.ApplyPropertyChanges("ProductSet", productToEdit);
entities.SaveChanges();
return RedirectToAction("Index");
}
catch
{
return View();
}
}
Или вы можете использовать другой подход:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(Product productToEdit)
{
try
{
entities.AttachTo("ProductSet", productToEdit);
entities.ObjectStateManager.GetObjectStateEntry(productToEdit).SetModified();
entities.SaveChanges();
return RedirectToAction("Index");
}
catch
{
return View();
}
}
Кстати.вы используете .NET 3.5?ApplyPropertyChanges
устарел в .NET 4.0.