【发布时间】:2014-10-29 22:11:43
【问题描述】:
我有一个像下面这样的类和方法
public class Product{
public int Id{get;set;}
public string Name{get;set;}
}
private void Method(List<Product> products)
{
var grouped = products.GroupBy(x=>x.ProductId)
....etc
}
是否可以通过条件 x=>x.ProductId 作为参数传递组?因为有时我想按名称、ID...等分组
请有人帮忙吗?我尝试实现 Func Deletegate,但我遇到了数据类型不匹配的问题
private void Method(List<Product> products, Func<Product, long> groupByCond)
{
var grouped = products.GroupBy(groupByCond)
....etc
}
但是对于按名称分组,而不是 long 它需要类型字符串。有人可以帮助使这个泛型接受所有类型吗?
谢谢。
【问题讨论】: