【问题标题】:Linq to SQL - Returning two values with one queryLinq to SQL - 一次查询返回两个值
【发布时间】:2010-03-26 11:45:19
【问题描述】:

是否可以使用 LINQ to SQL 返回单个值和可枚举集合?

问题是,我正在尝试跨大型记录集进行分页。我只想一次返回 10 行,所以我使用 .Skip(20).Take(10) 方法。

但是我需要知道记录的总数,这样我才能显示 y 的适当页 x。

尽量避免两个单独的查询。

谢谢

【问题讨论】:

    标签: c# linq


    【解决方案1】:

    不要害怕查询。两者都做。

    【讨论】:

    • 我担心页数可能会在两个查询之间发生变化。事情可能看起来有点奇怪。
    • @Sir Psycho:然后使用TransactionScope
    【解决方案2】:

    我遇到了同样的问题,结果是

    var q = from i in tableName select i;
    
    int total = q.Count();
    
    foreach(var obj in q.Skip(20).Take(10))
    {
        ...
    }
    

    其实一点问题都没有

    【讨论】:

    • 这很好,但它执行两个查询。因此我的回答如下。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-30
    • 1970-01-01
    • 2012-11-03
    • 1970-01-01
    • 2010-12-05
    相关资源
    最近更新 更多