我有一個Order
類,它由許多屬性組成,其中之一是Course
。 Course
對象包含一列MeetingDays
。 每個MeetingDay
對象包含許多屬性,其中之一是StartDate
。c#LINQ按屬性的子屬性對列表進行排序,屬性是對象列表
現在我想排序(OrderBy
)訂單列表,訂購它的StartDate
屬性MeetingDay
。
由於一個訂單可以有多個MeetingDays
:我也有一個日期,我只想按每個等於日期參數的訂單排序MeetingDay
。
所以,如果一個訂單在上午10點開始,並在下午2點結束,我希望它在我的列表中訂購,另一個訂單在下午3點開始,並在下午6點結束。
編輯
這將是很好,如果這樣的事情是可能的:
var sortedOrders = orders.OrderBy(x => x.Course.MeetingDays.StartDate.Date == date.Date).ToList();
從你的描述猜測,會是這樣的工作? 'myOrders.OrderBy(order => order.Course.MeetingDays.First()。StartDate)'? –
我更新了我的問題,因爲課程可以包含多個MeetingDays,但我只想對MeetingDate進行排序,其中MeetingDate.StartDate等於日期參數。 – WulfgarDK
聽起來像'myOrders.OrderBy(order => order.Course.MeetingDays.First(day => day.StartDate.Date == date.Date).StartDate)'。 'myOrders' **中的每個'order'都保證**包含'DateDay'與Date.Date具有相同的'Date'?如果不是,你想過濾這些命令嗎? – olydis