有没有办法实现对泛型类型的扩展方法,该泛型类型接受另一种类型的 Func 参数?
例如,类似这样的用法:
myFirstObject.Extension<myOtherObject>( other => other.Prop );
或者使用更复杂的 Func:
myFirstObject.Extension<myOtherObject>( other => other.Prop > 2 && other.Prop < 15 );
我发现了一些类似的相关问题,但就我而言,我也需要扩展方法中的泛型类型。
这是我想出的:
public static bool Extension<TSource, TIn, TKey>(this TSource p_Value, Expression<Func<TIn, TKey>> p_OutExpression)
{ return true; }
但是,当我尝试使用它时,它并没有考虑到第二种类型。
我错过了什么吗?