我有许多实例需要返回使用.GroupBy
. 除了日期和整数之外,我还需要返回布尔值,这似乎是我做不到的。示例模型:
public class HolidayCheckList
{
public DateTime startDate { get; set; }
public DateTime endDate { get; set; }
public int stafferId { get; set; }
public bool startTime { get; set; }
public bool endTime { get; set; }
}
以下是目前的控制器:
var model = _db.AnnualLeaves
.Where(r => r.StartDate <= tTE && r.EndDate >= tTS)
.GroupBy(r => r.tBooked)
.Select(m => new HolidayCheckList
{
startDate = m.Max(r => r.StartDate),
endDate = m.Max(r => r.EndDate),
stafferId = m.Min(r => r.StafferId)
});
return View(model.ToList());
这可以满足我的需要。但是,除了startDate
and之外,endDate
我还需要将startTime
and endTime
(布尔值)返回给 View。我不知道我是否需要一个我不知道的聚合运算符,是否需要包含在.GroupBy
语句中,或者可能需要一个嵌套查询。毫无疑问,这将是更简单的事情。
我确实考虑将数据类型更改为整数,但想知道是否有办法“正确”地做到这一点。
顺便说一句,是否有 lambda 查询的学习资源或文档?我可以找到基本信息,但没有详细说明如何.GroupBy
工作或聚合运算符是什么。