我想将一个grouppedList传递给几个函数,但是当尝试使用一个类而不是一个匿名类型进行分组时,我得到了奇怪的结果。在以下示例中,匿名类型按预期返回2个结果,但具体类返回5,就好像它没有分组一样。Linq to Sql Group按类
问题:是否有可能通过具体的类来执行Linq to Sql Group?
public class person
{
public string Name;
public string State;
}
public class personGroup
{
public string State;
public personGroup(string personState)
{
State = personState;
}
}
void Main()
{
var people = new List<person>();
people.Add(new person {Name = "Bob", State = "Tx"});
people.Add(new person {Name = "Bill", State = "Tx"});
people.Add(new person {Name = "Tracy", State = "Tx"});
people.Add(new person {Name = "Steve", State = "Md"});
people.Add(new person {Name = "Kelly", State = "Md"});
var groupedPeople = people.GroupBy (p => p.State);
groupedPeople.Count().Dump();//Returns 2
var morePeople = people.GroupBy (p => new personGroup(p.State));
morePeople.Count().Dump();//Returns 5
}
在这个问题中没有“SQL”。我想你只是说LINQ。 – 2014-11-06 21:26:43