读书人

EF批改实体的一点困惑

发布时间: 2013-11-04 16:56:03 作者: rapoo

EF修改实体的一点困惑


public override int Update(User model)
{
DbEntityEntry<User> entry = ConText.Entry<User>(model);
entry.State = System.Data.EntityState.Modified;
return ConText.SaveChanges();
}

这个是修改的方法,一般情况下没有问题,修改页面上因为密码是不会显示出来的,所以服务端在加载修改页面的时候并没有发送[密码字段]到客户端,这里修改的时候,用户如果不想更改密码,那么密码就为空,修改的时候就把密码覆盖了,这种情况下应该如何做呢
[解决办法]
密码不能放在User中。
[解决办法]
edm每个字段单独付值,没有付值的字段保持原来的内容,也就是那个栏位不被update
[解决办法]
先将password用一个变量记下,加个判断,如果提交的model没有password,就在更新完之后写回去。

读书人网 >C#

热点推荐