【叫我猫爷_】Linq多字段分组. 求Linq高手支招..
public class Student
{
public string Name { get; set;}
public string Code { get; set;}
public List<ClassMate> MateList { get; set;}
}
public class ClassMate
{
public string Name { get; set;}
public string Remark { get; set;}
public string Address { get; set;}
}
现在我想要的结果呢. 就是根据ClassMate类的Name和Address分组.. 好像组合主键那样子吧..
这应该要怎么写.? 如果是单字段分组我会,多字段我就不知道了..
单字段我是这样写的..
IEnumerable<IGrouping<string, ClassMate>> query = stu.MateList.GourpBy(g => g.Name, g => g);
求Linq高手支招..
------解决方案--------------------百度啊 有一大把资料啊
------解决方案--------------------stu.MateList.GroupBy(x => new { x.Name, x.Address })
------解决方案--------------------哎,难道LZ非要写成List<List<ClassMate>> cMateList;这种样子的才行?
List<List<ClassMate>> cMateList = stu.MateList.GroupBy(x => new { x.Name, x.Address }).Select(y => y.ToList()).ToList();
这下你满足了吧?
有意义么?