EF实体的部分更新
Posted 毛毛虫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EF实体的部分更新相关的知识,希望对你有一定的参考价值。
实现实体的部分更新
假设实体InfoHotel如下:
public class InfoHotel
{
public int Id{get;set;}
public string Name{get;set;}
public string Address{get;set;
public string Other1{get;set};
public string Other1{get;set};
public string Other2{get;set};
public string Other3{get;set};
}
有个网页仅仅修改Name和Address,保存的Action如下
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "Id,Name,Address")] InfoHotel item)
{
if (ModelState.IsValid)
{
var oldItem = db.InfoHotels.Find(this.KeyCorp);
oldItem.Name = item.Name;
oldItem.Address = item.KeyCardRW;
oldItem.KeyPms = item.KeyPms;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(item);
}
比较麻烦,可以改成
public ActionResult Edit([Bind(Include = "Id,Name,Address")] InfoHotel item)
{
if (ModelState.IsValid)
{
var oldItem = db.InfoHotels.Find(this.KeyCorp)
db.Entry(oldItem).CurrentValues.SetValues(item);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(item);
}
以上是关于EF实体的部分更新的主要内容,如果未能解决你的问题,请参考以下文章