C#には、を受け入れる関数があります<T>
。現在、を使用してインスタンスを作成していますActivator.CreateInstance<T>()
。
<T>
実行時にのパラメーターを検出して、パラメーターを使用<T>
して作成できるようにする方法はありますか?
メソッドスタブは次のようになります。
public static T Get<T>()
{
}
特定の型は複数のコンストラクターを持つことができることに注意する必要があります。ただし、それらはすべて簡単に見つけることができます。
var constructors = typeof(T).GetConstructors();
非パブリック コンストラクターを検索する場合Type.GetConstructors
は、オーバーロードを取ることに注意してください。BindingFlags