私はこのような宣言とメソッドを持っています。Func <object、bool>のパラメータとしてFunc <T, bool>を使用する方法?
public void OriginalMethod(Func<object,bool> selector)
そして、私はこのような宣言を持っていること、一般的な方法から、それを呼び出すしたいと思います:
public void GenericMethod<T>(Func<T, bool> selector)
私はそれをどのように行うのですか?
実際の問題は、それのFuncです...
をしかし
OriginalMethod
がTに変換できないオブジェクトとメソッドを呼び出す場合、それは失敗します。もちろん、あなたはカンニングすることができますオブジェクトに実装されていないTのメンバーを潜在的に呼び出すことができます。 OriginalMethodはオブジェクトパラメータでそれを呼び出すため、コンパイラはFuncが互換性があることを確認できません。 Tがオブジェクトのすべてのメンバーの実装を含むことが保証されているため、Func