Asp.net mvc 3 MVC 3-使用EDMX模型更新表行

Asp.net mvc 3 MVC 3-使用EDMX模型更新表行,asp.net-mvc-3,entity-framework-4,edmx,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);

我尝试了几种方法来更新数据库中的对象。我也在这里和其他论坛上读到了一些关于更新数据的问题。但除了一种方式,其他一切都不适合我

什么有效?如果我手动更新所有属性,它就会工作。大概是这样的:

[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();
}
我知道有很多问题与我的问题相似,但我就是不能让这些问题对我起作用。

[HttpPost]
[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();
}
公共操作结果更新模型(个人) { DBEntities db=新的DBEntities(); var p=db.PERSON.Single(x=>x.ID==PERSON.ID); TryUpdateModel(p);
[HttpPost]
公共操作结果更新模型(个人)
{
DBEntities db=新的DBEntities();
var p=db.PERSON.Single(x=>x.ID==PERSON.ID);

TryUpdateModel(p);非常感谢男人们。我很高兴我问了这个问题。我只花了两个小时查找资料。我觉得太复杂了。:)非常感谢男人们。我很高兴我问了这个问题。我只花了两个小时查找资料。我觉得太复杂了。:)下载书呆子晚餐应用程序,并通过源代码倾诉。另外-处理你的DBEntities()用using(DBEntities db=new DBEntities()){..}下载nerd晚餐应用程序,并从源代码中倒出。另外-用using(DBEntities db=new DBEntities())将DBEntities()用using(DBEntities db=new DBEntities())来处理