linq 实体更新问题,在线请教高手,急!!!
ZhhDataContext db = ZhhDataContext.Create();
Zhh.Models.User user = new Zhh.Models.User();
user.LoginID = LoginID;
user.Password = Password;
user.LoginCount += 1;
user.LastTime = DateTime.Now;
Modify(user);
public bool Modify(User t)
{
Zhh.Models.User user = db.User.FirstOrDefault(u => u.PKID == t.PKID);
user = t;
db.SubmitChanges();
return true;
}
请问这样些为什么更新不了数据啊。请教高手!!!
------解决方案--------------------告诉你了user = t;这样写不行,new 了user,就要对其属性赋值,才能更新
user = t;这样是将new的user指向了t,并没有改变new出来的user的内部属性的值
改为
user.xxx = t.xxx;
user.yyy = t.yyy
------解决方案-------------------- user = t;
这肯定是不和的,不能对实体直接付值,要对其内的属性字段一个个的来:
user.LoginID = t.LoginID;
user.Password = t.Password;
....
------解决方案--------------------++1