首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LINQ Take语法

LINQ Take语法
EN

Stack Overflow用户
提问于 2012-04-12 14:37:08
回答 1查看 332关注 0票数 0

我已经写了一些LINQ来模拟SQL GroupBy语句(见下文)。然而,在我的group by之前,我也只需要考虑最后10个settingIds。我想我会使用Take来做这件事,但是我的语句中的正确语法是什么呢?

代码语言:javascript
复制
var settings2 = from s in dc.SystemSettings
                where s.campConfig.campaignType == campType
                      && s.campId != campId
                      && s.settingKey == ticket.setting.Key
                orderby s.settingId descending
                group s by s.settingValue
                into grp
                select new
                {
                    SettingValue = grp.Key,
                    SettingCount = grp.Select(x => x.settingValue).Count()
                };
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-12 15:09:42

我会做这样的事情

代码语言:javascript
复制
var settings2 = from sOuter in 
    (from s in dc.SystemSettings
    where s.campConfig.campaignType == campType
      && s.campId != campId
      && s.settingKey == ticket.setting.Key
    orderby s.settingId descending
    select s).Take(10)
    group sOuter by sOuter.settingValue
    into grp
    select new
    {
      SettingValue = grp.Key,
      SettingCount = grp.Select(x => x.settingValue).Count()
    };
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10118605

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档