我正在尝试在控制器的POST
更新我的模型:
我在这里从数据库中获取原始值:
var origAttributes = (from tAttr in db.TeacherAttrs where tAttr.ID == ta.ID select tAttr);
我ViewModel
里有一处房产,是一种db.TeacherAttr
物业名称:
ta.DMTeacherAttr
我想知道有没有办法比较我的模型(ta.DMTeacherAttr
)和数据库中已有的值之间的值?
我也在使用实体框架 5。
你试过这个吗:
var origTeacherAttr = db.TeacherAttrs.Find(ta.ID);
if(origTeacherAttr.DMTeacherAttr==ta.DMTeacherAttr)
{
//Do something
}
如果比较的目的是查看哪些字段确实需要更新,那么实体框架将为您完成此操作,您需要做两件事:
- 将视图模型映射到模型
- 将所有模型属性设置为虚拟
实体框架将使用代理包装您的类,并将跟踪其属性。