Expression<Func<T, object>>
インスタンスを受け入れるメソッドがあります。私は実際 のデータ型がobject
ではなく特定の式インスタンスによって返されるようにしたいと考えています。式から実際の戻り値の型を取得する<Func <T, object>>インスタンス
私は直接プロパティの参照のために働くことができますので、式x => x.IntegerProperty
を渡すと、整数の型参照を取得できます。このアプローチでは、それをMemberExpressionに変換する必要があります。
しかし、私はそれを任意の表現のために働かせることはできません。たとえば、式がx => x.IntegerProperty.ToString()
の場合、文字列の型参照を取得したいとします。私はこれをMemberExpressionにコンパイルすることはできません。もし私がただ.Compile()
と返された型をチェックすれば、私は "object"を取得します。
特定の式のインスタンスを見て、実際の戻り値の型を取得するにはどうすればよいですか?
技術的には、式の実際の戻り値の型は、「オブジェクト」です。関数は 'object'を返す必要があったので、返される型(この場合は変換)であることを保証するために必要な式が生成されました。 –