SingleOrDefault不返回当前数据库内容

时间:2012-04-02 16:37:34

标签: ef-code-first

我们首先使用Entity Framework 4.31代码处理针对sql server 2008数据库的crud操作。

1)我调用db来撤回数据......

T _return1 = _dbset.Where(o =>!o.F_isdeleted&& o.I_id == id).Single();

2)我改变_return1 ...

中的数据

3)然后我使用sql server management studio手动对数据库中的同一记录进行更新...

4)然后我在1中找到相同的调用(进入第二个对象)以撤回数据,观察对数据库进行的SQL服务器配置文件中的调用。

T _return2 = _dbset.Where(o =>!o.F_isdeleted&& o.I_id == id).Single();

5)当我检查return2的内容时,我可以看到它不包含数据库中的更新数据,即使我可以看到在4中对数据库进行的调用。

我在这里遗漏了什么? 为什么我没有在_return2中看到当前的db内容,而是看到相同的内容 _return1 ???

1 个答案:

答案 0 :(得分:0)

我不确定您遇到了什么问题,但排除故障的最佳方法是首先查看调用数据库时SQL实体框架所生成的内容。您可以手动执行,使用LinqPad或安装http://code.google.com/p/mvc-mini-profiler/

之类的内容