位置:首頁 > 軟件操作教程 > 編程開發(fā) > C# > 問題詳情

C# orderby 子句

提問人:劉團(tuán)圓發(fā)布時間:2020-12-11

  orderby子句如下所示:

      orderby n

  與where子句一樣,orderby子句也是可選的。只要添加一行,就可以對任意查詢的結(jié)果排序,而不使用UNQ時,根據(jù)選擇實(shí)現(xiàn)的排序算法,需要額外編寫至少幾行代碼,還可能需要添加幾個方法或集合來存儲重新排序的結(jié)果。如果有多個需要排序的類型,就需要為每個類型實(shí)現(xiàn)一系列排序方法。而使用LINQ不需要做這些工作,只需要在查詢語句中添加一條子句即可。

orderby子句默認(rèn)為升序(A到Z),但可以添加descending關(guān)鍵字,以便指定為降序(Z到A):

    orderby n descending

這會使示例的結(jié)果變成:

    Smythe

    Smith

    Small

    Singh

    Samba

  另外,可以按照任意表達(dá)式進(jìn)行排序,而不必重新編寫牽詢。例如,要按照姓名中的最后一個字母排序,而不是按一般的字母順序排序,就只需要添加如下orderby子句:

    orderby n.Substring(n.Length - 1)

結(jié)果如下:

    Samba

    Smythe

    Smith

    Singh

    Small

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部