读书人

运用linq 查询非数据库值

发布时间: 2012-12-17 09:31:40 作者: rapoo

使用linq 查询非数据库值


var obj = (from d in db.DEF_Employee
where d.Code == code &&
d.Password == password
select d).SingleOrDefault();

obj.Name = "111";
//这里没有提交到数据库的代码
//然后执行

var obj2 = (from d in db.DEF_Employee
where d.Code == code &&
d.Password == password
select d).SingleOrDefault();
这里的obj2.Name是"111"

如何取数据库值,而非内存值
[最优解释]
var obj2 = (from d in db.DEF_Employee
where d.Code == code &&
d.Password == password
select d).SingleOrDefault();

[其他解释]
重新NEW一个 db出来
不要使用之前的 datacontxt
[其他解释]
引用.
[其他解释]
引用:
var obj2 = (from d in db.DEF_Employee
where d.Code == code &&
d.Password == password
select d).SingleOrDefault();

谢谢,还有别的办法没。
[其他解释]
当我用视图查询时就没这个问题

var obj = (from d in db.DEF_EmployeeView
where d.Code == code &&
d.Password == password
select d).SingleOrDefault();

obj.Name = "111";
//这里没有提交到数据库的代码
//然后执行

var obj2 = (from d in db.DEF_EmployeeView
where d.Code == code &&


d.Password == password
select d).SingleOrDefault();
这里的obj2.Name是数据库的值


[其他解释]
datacontxt的作用就是跟踪数据的变化
你如果不想使用本地的变化后的数据
那只有重新NEW一个dataconxt出来

EF4.1 中 提供了一个新的关键字: context.Local
就是用来专门 查询local的数据变化的
[其他解释]
嗯 知道了,谢谢

读书人网 >.NET

热点推荐