【问题标题】:LINQ Resultset IssueLINQ 结果集问题
【发布时间】:2009-02-11 06:57:21
【问题描述】:

我使用 LINQ 构建了一个站点,它已经开始显示它带来的结果的问题。

查询得出的结果并不反映数据库中的数据,它们反映的是旧版本的数据库。

在所有创建 LINQ 数据上下文的地方,它都被正确地处理掉了。网站中使用的示例代码如下所示

 using (DataClassesDataContext context = new DataClassesDataContext()) 
 {
     return (<query here>).Distinct().ToList();
 }

【问题讨论】:

    标签: linq-to-sql caching datacontext


    【解决方案1】:

    调试时在运行时检查生成的SQL,并对照你的数据库检查结果...

    还要检查你的连接字符串,也许你的 DataContext 正在连接到另一个数据库...

    【讨论】:

    • 不,它指向同一个数据库,我彻底验证了这个问题。在网站上运行的 LINQ 查询给出了不同的结果,如果我编写自己的应用程序并运行该查询,它会给我一个不同的结果。
    • 我在一些地方看到过这个问题,它与 DataContext 没有被正确处理有关。在我的例子中,我有一个 using 构造,它应该控制这个数据上下文的生命周期。结果还是不一样
    • 另外,这是另一个症状。如果我使用 iisreset,网站会在一段时间内获得正常数据。这里我想说的是,服务器上没有任何类型的缓存。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-03
    • 2011-04-04
    • 1970-01-01
    相关资源
    最近更新 更多