の式
class Foo<T>
{
public Foo<TResult>(Expression<Func<T, TResult>> selector)
{
List<string> memberNames = typeof(TR).GetProperties().Select(p => p.Name).ToList();
....//some work on memberNames
}
}
とコードでFooのインスタンスを作成します。
Foo<ClassA> foo = new Foo<ClassA>(u=>new{u.Property1, u.Property2});
が、これは動作しませんでした。コンストラクタはGeneric型TResultを持ちません。 どうすればよいですか?
私はanserwを見つけて答えに書きました。
'Fooのに従うことを解決 'はコンストラクタ' Foo 'を持てません –
rbm
私が知る限り、あなたはそれのような' TResult'を使うことはできません。メソッドに設定する必要があります。あるいは、 'Foo'のように 'TResult'をクラス定義に追加する必要があります。 –
smoksnes
はい、それはコンパイルされませんが、私はその作業が必要です。 –