C# 对于LINQ,当只有一条记录时,为什么GroupBy不返回任何行?
t1只包含一行:C# 对于LINQ,当只有一条记录时,为什么GroupBy不返回任何行?,c#,linq,C#,Linq,t1只包含一行: var t2 = t1 .GroupBy(x => x.DateYYMMDD) .OrderBy(g => g.Key) .Select(g => new ScreenTimeModel { DateYYMMDD = $"20{g.Key.Substring(0, 2)}/{g.Key.Substring(2, 2)}/{g.Key.Substring(4, 2)}", LearnTime = TimeSpan.
var t2 = t1
.GroupBy(x => x.DateYYMMDD)
.OrderBy(g => g.Key)
.Select(g => new ScreenTimeModel
{
DateYYMMDD = $"20{g.Key.Substring(0, 2)}/{g.Key.Substring(2, 2)}/{g.Key.Substring(4, 2)}",
LearnTime = TimeSpan.FromSeconds(g.Where(gx => gx.Mode == (int)MO.Learn).Sum(gi => gi.ScreenSeconds)).ToString(@"hh\:mm\:ss"),
});
当我尝试运行这段代码并检查t2时,我发现没有元素
是否至少应该有一个元素?我不确定,但我认为这是因为您的t2变量处于状态请求中,所以您应该尝试在.Select call and revirify之后调用ToList方法。我不确定,但我认为这是因为您的t2变量处于状态请求中,所以您应该尝试在调用之后调用ToList方法。选择call and Refrify。将立即尝试。将立即尝试。请共享示例数据。请共享示例数据