LINQ TO SQL,同一个连接怎么能够查询数据库的最新数据
我把dc连好后,就一直使用其对数据库进行增、删、改操作,项目最后才发现一个问题:
我直接在数据库中修改一个数据,dc查询不到最新值,
但是在数据库中增加、删除,则可以查询到。
不把dc重新连接,有没有办法查询到最新数据?
假设有一个表:TblSample
只有2个字段:ID、Name
只有1条记录:ID是1,Name是“test”
程序中生成dbml文件、创建dc、连接数据库过程省略
查询代码(代码中各种判错语句省略):
var query = from p in dc.TblSample select p;
Console.WriteLine(query.first().Name);
假设程序只有这么简单,启动后就是创建dc、连接数据库,点下某个按钮则执行查询、打印。
我使用Sql Server提供的企业管理器或者查询分析器修改记录的Name字段为"test2",然后重新查询,打印的结果依然是旧的"test"。但是如果程序重启,也或者重新创建dc、连接数据库,则能正确查询到"test2"
用C#做的Winfrom开发
该问题本来发在LINQ模块,但是那边太冷清,在这边帮忙解决问题的朋友,到时顺便那边也回复下,分全给(那边100分)
http://topic.csdn.net/u/20100906/13/8e43fe02-7696-4682-a415-d38260509a91.html?82775