[英]If number have no value it should placed last(LINQ)
我正在使用linq to sql,我的代碼如下所示:
var agendaLists =
dataContext.view_Agendas.Where(m => m.MeetingID == meetingID)
.OrderBy(n => n.Number)
.ThenBy(n => n.CaseNumber)
.ThenByDescending(s => s.MainYN)
.ToList();
所以基本上我們的“n.Number”是訂單號。 一切正常,其分類1,2,3,4等是正確的。 但如果一個對象在n.Number中沒有值,它將顯示在頂部,但我希望它被放在最后。
今天這樣排序,讓我們說我們得到4個對象:
Null, 1, 2, 3
我希望它像這樣排序:
1, 2, 3, Null
任何形式的幫助表示贊賞。
嘗試以下方法:
n => n.Number ?? int.MaxValue
我不記得你是否真的要檢查DBNull
,但它會是一樣的。
您可以使用這種方法,假設Number
是一個int?
:
var agendaLists = dataContext.view_Agendas
.Where(m => m.MeetingID == meetingID)
.OrderBy(m => n.Number.HasValue ? 0 : 1)
.ThenBy(n => n.Number)
.ThenBy(n => n.CaseNumber)
.ThenByDescending(s => s.MainYN)
.ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.