我怎样才能对以下内容进行分组?
people.GroupBy(p=>p.Addresses.GetFirstOrDefault().State);
没有失败的人没有地址?
非常感谢!
答案 0 :(得分:3)
可以在一个声明中完成,是的:
// Set up whatever you need
Address dummyAddress = new Address { State = "" };
people.GroupBy(p => (p.Addresses.GetFirstOrDefault() ?? dummyAddress).State);
或者,您可能想要编写辅助方法:
public string GetState(Address address)
{
return address == null ? null : address.State;
}
然后你可以使用:
people.GroupBy(p => GetState(p.Addresses.GetFirstOrDefault()));