有的时候在使用一些C#方法的时候会看到要求输入Expression<Func<T1,T2>> expression 这个参数
怎么去理解呢?
Func是表示的委托类型,接受T1类型的参数,然后返回T2类型的值,
而Expression代表的是表达式类型
不妨这么去理解Expression<Func<int,double>> expression
Expression是一个表达式,那么就写成lambda表达式
这么这个Lambda表达式接受int参数,然后返回double类型就可以这么写:
(num)=>(double)num
这样就构成了一个expression,可以传递到方法中。