2012-06-13 119 views
0

我正在使用Func作为在Linq语句中用于GroupBy操作的方法的参数。 TSource是的IFoo和TKEY的是的IFoo的财产,如IFoo.Number,使我的函数功能参数看起来像:获取Func的名称<TSource,TKey>泛型类型参数

foo => foo.Number 

到目前为止好。但是,现在我试图获得TKey的字符串表示,或者说,我试着从Func <>参数中同步字符串“Number”。

可以这样做,如果是这样,怎么办?感谢大家提前..

回答

2

你不能用一个函数功能,你需要类型Expression<Func<TSource, TKey>>

和工作,对表达的身体参数。

当你需要func时,只需编译表达式即可。

从表达式得到名称: Retrieving Property name from lambda expression