我有一个带有列表的类,该列表存储事件的日期列表,我需要查询事件列表并按日期排序,如何在Entity Framework中实现此目的。
这是我的主要课程
log.output
我需要查询该课程中可用的日期
public class UserEv
{
public string title { get; set; }
public virtual List<Dates> dates { get; set; }
}
我需要在开始日期之前对从查询中获得的结果进行排序。如何在EF中实现此功能。这是当前用于从db获取数据的查询,在订购时遇到了麻烦。
public class Dates
{
public DateTime start { get; set; }
public DateTime end { get; set; }
}
任何帮助都会很棒。
答案 0 :(得分:3)
假设这可行:
db.UserEv.Where(l=> l.dates.Any(a => a.start>= (start)))
.Where(l=> l.dates.Any(b => b.end<= (end)))
要按最早的开始日期进行排序:
.OrderBy(l => l.Dates.Min(d => d.start));