读书人

EF4.3 一个关于对象更新的基础有关问题

发布时间: 2013-07-08 14:13:00 作者: rapoo

EF4.3 一个关于对象更新的基础问题
我要更新User对象,

int result = 0;
using (var db = new SchoolSubSystemDBContext())
{
var ur = db.PermissionRoles.FirstOrDefault(r => r.ID == user.UserRole.ID);
user.UserRole = ur;
db.Entry(user).State = EntityState.Modified;
result = db.SaveChanges();
}
return result > 0;

User对象包含了一个UserRole对象:
[Required(ErrorMessage = "请选择用户角色")]
public System_Permission_UserRoles UserRole { get; set; }

更新的时候,User的其它基本信息都没问题,可是UserRoles就是更新不了,请问牛人这个问题怎么解决!
只有这点可用分了,希望大家理解。万分感谢!!!!


[解决办法]
var ur = db.PermissionRoles.FirstOrDefault(r => r.ID == user.UserRole.ID);
你这获取到的还是老的 UserRole信息吧
[解决办法]
楼主错了。

User 得通过查询出来实体类,你在用 传递进来的user 给User 实体类赋值。

这样 EF 才知道你要更新user,UserRole 才会被自动添加到数据库。

读书人网 >.NET

热点推荐