读书人

linq groupby的有关问题

发布时间: 2012-10-11 10:16:10 作者: rapoo

linq groupby的问题

C# code
       List<DateTime> ld = new List<DateTime>();            for (int i = 0; i < (eTime - sTime).Days; i++)            {                ld.Add(sTime.AddDays(i));            }    var stat = ls1.GroupBy(p=>p.DateTime).Select(x => new { x.Key, Values = x.AsEnumerable().OrderBy(p => p.DevName) });



本来是根据 对象内的 dateTime 做分组,但是可能出现 有一个对象是空值的问题

现在要根据那个 ld 的list 做分组 请问如何写

[解决办法]
var stat = ls1.Where(p=>p.DateTime !=null).GroupBy(p=>p.DateTime).Select(x => new { x.Key, Values = x.AsEnumerable().OrderBy(p => p.DevName) });

先where过滤掉空情况再Group By
[解决办法]
也可以用 DefaultIfEmpty() 给一个默认值。
[解决办法]
要是为空,排序时也要有个值才能排序的,把为空的换成0吧

读书人网 >.NET

热点推荐