5

重複の可能性:
LINQ での複数の "order by"

いくつかのデータセットをいくつかのフィールドと別のフィールドで注文したいと考えています。

ラムダ式を使用すると、これは簡単になりますが (OrderBy.ThenBy)、次のような構文がある場合の方法は次のとおりです。

 int maxQueries = int.MaxValue;
        // finds the most search for queries
        var ordered = from p in searchLogs
        where !string.IsNullOrEmpty(p.SearchQuery)
        group p by new 
        { 
           SearchQuery = p.SearchQuery
        } 
        into pgroup
        let count = pgroup.Count()
        orderby count descending
        select new 
        { 
            Count = count, 
            SearchQuery = pgroup.Key.SearchQuery
        };

降順のキーワードの後に​​機能する方法を見つけることができないようです (orderby count 降順、searchquery など)。

何か案は?

4

2 に答える 2

7

後にコンマを置き、descending次に並べ替えるものを指定します (オプションで を追加しますdescending) など

于 2012-12-22T12:56:57.847 に答える
0

次のような Customer クラスがある場合、mlorbetske の回答にコードを追加するだけです。

public class Customer
{
    public string Name;
    public DateTime MemberSince;
}

次に、次のような順序付けを実行できます。

var q = from c in Customers
        orderby c.MemberSince.Date descending, c.Name
        select c;
于 2012-12-22T13:26:26.670 に答える