linq 查询 return 嵌套列表的唯一项
linq query to return nested list for unique items
我有一个 linq 查询:
var leaveDetails = (from l in leaveList
group l by new {l.LeaveDateStart.Year, l.LeaveType}
into yearGroup
select new
{
yearGroup.Key.Year,
yearGroup.Key.LeaveType,
LeaveTaken = yearGroup.Sum(l => EntityFunctions.DiffDays(l.LeaveDateStart, l.LeaveDateEnd))
}).ToList();
结果如下:
但是我想按不同的年份分组。因此,对于每个独特的年份,我都有一个休假类型列表和休假天数。
我试过在 javascript 的前端做,但看起来很乱。有没有一种方法可以在 C# 或 linq 查询中完成。谢谢
您有一个按年份和休假类型分组的当前结果。您可以简单地按年份对当前结果进行分组,select 休假类型和休假作为每组的价值。
像这样(注:没测试过):
var leaveDetailsPerYear = (from l in leaveDetails
group l by l.Year
into yearGroup
select new {
Year = yearGroup.Key,
Data = yearGroup.ToList()
}
)
.ToList();
我有一个 linq 查询:
var leaveDetails = (from l in leaveList
group l by new {l.LeaveDateStart.Year, l.LeaveType}
into yearGroup
select new
{
yearGroup.Key.Year,
yearGroup.Key.LeaveType,
LeaveTaken = yearGroup.Sum(l => EntityFunctions.DiffDays(l.LeaveDateStart, l.LeaveDateEnd))
}).ToList();
结果如下:
我试过在 javascript 的前端做,但看起来很乱。有没有一种方法可以在 C# 或 linq 查询中完成。谢谢
您有一个按年份和休假类型分组的当前结果。您可以简单地按年份对当前结果进行分组,select 休假类型和休假作为每组的价值。
像这样(注:没测试过):
var leaveDetailsPerYear = (from l in leaveDetails
group l by l.Year
into yearGroup
select new {
Year = yearGroup.Key,
Data = yearGroup.ToList()
}
)
.ToList();