首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

linq groupby的有关问题

2012-10-11 
linq groupby的问题C# codeListDateTime ld new ListDateTime()for (int i 0 i (eTime - sTim

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吧

热点排行