【问题标题】:sorting of an IqueryableIqueryable 的排序
【发布时间】:2009-12-09 01:05:09
【问题描述】:

我有一个包含重复条目的 IQueryable,我想按出现次数对这个 IQueryable 进行排序。

【问题讨论】:

    标签: linq-to-sql iqueryable


    【解决方案1】:

    试试这个:

    from e in myQueryable
    group e by e.Something into g
    order by g.Count()
    select g  //Or, g.First()
    

    【讨论】:

    • 无论如何都要先获得最大出现的元素而不是最少的元素。
    【解决方案2】:

    像这样:

    list
        .GroupBy(x => x.ID)
        .Select(x => new {Obj = x.First(), Count = x.Count()})
        .OrderBy(x => x.Count)
        .Select(x => x.Obj);
    

    不过,我更喜欢 SLaks 的解决方案。

    list
        .GroupBy(x => x.ID)             
        .OrderBy(x => x.Count())
        .Select(x => x.First());
    

    【讨论】:

    • 我在这里没有看到问题,反正已修复:)。
    • 我并不是要暗示有问题。
    猜你喜欢
    • 2013-06-21
    • 1970-01-01
    • 1970-01-01
    • 2011-11-03
    • 1970-01-01
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    • 2010-09-27
    相关资源
    最近更新 更多