MVC 3 - 使用EDMX模型更新表格行

时间:2011-11-03 13:51:17

标签: asp.net-mvc-3 entity-framework-4 edmx

我已经尝试了几种方法来更新数据库中的对象。我还在这里和其他有关更新数据的论坛上阅读了几个问题。但除了一种方式,没有别的东西对我有用。

什么有效?如果我手动更新所有属性,它可以工作。像这样:

[HttpPost]
public ActionResult UpdateModel(Person person)
{
    DBEntities db = new DBEntities();
    var p = db.PERSON.Single( x=> x.ID == person.ID);
    p.NAME = person.NAME;
    p.AGE = person.AGE;
    db.SaveChanges();
}

但对于具有大量属性的模型,这不是一个真正的选择。在某种程度上,我可以做一些与此类似的事情吗?

[HttpPost]
public ActionResult UpdateModel(Person person)
{
    DBEntities db = new DBEntities();
    var p = db.PERSON.Single( x=> x.ID == person.ID);
    p = person;
    db.SaveChanges();
}

我知道有很多问题与我的相似,但我只是不能让这对我有用。

1 个答案:

答案 0 :(得分:1)

[HttpPost]
public ActionResult UpdateModel(Person person)
{
    DBEntities db = new DBEntities();
    var p = db.PERSON.Single( x=> x.ID == person.ID);
    TryUpdateModel(p); <--here is the change i made
    db.SaveChanges();
}

http://msdn.microsoft.com/en-us/library/system.web.mvc.controller.tryupdatemodel.aspx