我有這些代碼行將項目添加到下拉列表中,並通過聽取日期然後按時間排序它們。我想更進一步,按字母順序排列「類型」或項目描述。添加另一個排序選項到下拉列表
這是我在我的控制器代碼:
public void AddHearingsToViewModel(CourtActivityViewModel viewModel, IQueryable<Hearing> hearings)
{
if (viewModel.HearingEntryId == Guid.Empty)
viewModel.HearingEntryId = hearings.OrderByDescending(h => h.HearingDate).ThenByDescending(d=>d.HearingDate).FirstOrDefault().HearingEntryId;
viewModel.Hearings = hearings.ToSelectList("HearingEntryId", "CourtActivitySelection", viewModel.HearingEntryId.ToString());
}
我..Domain.Entities.Hearing
public partial class Hearing
{
public string CourtActivitySelection
{
get { return string.Format(@"{0:d} - {0:t} - {1} ", HearingDate, HearingType.Description); }
}
public override string ToString()
{
return string.Format(@"{1} on {0:d} @ {0:t}", HearingDate, HearingType.Description);
}
}
public partial class HearingEntry
{
public override string ToString()
{
return string.Format(@"{1} on {0:d} @ {0:t}", HearingDate, HearingType.Description);
}
}
我想:
viewModel.HearingEntryId = hearings.OrderByDescending(h => h.HearingDate).ThenByDescending(d=>d.HearingDate).OrderBy(t=>t.HearingType).FirstOrDefault().HearingEntryId;
確切的錯誤是:
不能按ty排序pe'Kids.Domain.Entities.HearingType'。 描述:執行當前Web請求期間發生未處理的異常。請查看堆棧跟蹤以獲取有關該錯誤的更多信息以及源代碼的位置。
異常詳細信息:System.InvalidOperationException:無法按類型'Kids.Domain.Entities.HearingType'進行排序。
,並以紅色的線是我加的是.ThenBy(t=>t.HearingType)
你'.OrderBy(T => t.HearingType)'也許應該是'.ThenBy(T => t.HearingType)'。 –
@ErikPhilips剛剛嘗試過了,我仍然會得到相同的錯誤,我不確定那個錯誤真的是什麼意思在那將是原因。 – Masriyah
如果您可以複製並粘貼* exact *錯誤消息,這是最好的,因爲我們沒有您的模型的外觀背景,也不知道每種屬性類型。 –