実行時に生成されるType
という動的変数を持っています。たとえばmyGeneratedType
です。私はT
がmyGeneratedType
になるはずの次のクラスのインスタンスを作成しようとしています。私は、ダイナミック型は、クラスのプロパティに設定する必要があったいくつかの答えに遭遇してきたが、それはList<T>
上で動作するように取得するように見えることはできません。実行時にダイナミックタイプのリストを設定する汎用タイプのパラメータ
Type myGeneratedType;
private class Container<T>
{
public string a { get; set; }
public string b { get; set; }
public List<T> c { get; set; }
}
void Main()
{
Container<myGeneratedType> c = new Container<myGeneratedType>();
}
、私のメソッド内のコードの行をMain()
動作しません。ダイナミックタイプをジェネリック型パラメータとして使用してContainer
のクラスを作成するにはどうすればよいですか?
ある
? – DavidG
MakeGenericTypeを使用してください:https://msdn.microsoft.com/en-us/library/system.type.makegenerictype(v=vs.110).aspx –
あなたはあなたが 'c '?コンパイル時にその型がわからない場合は、@ YairHalberstadtが示唆するような 'Type'を構築することができますが、それは' c'を宣言して使用するのに役立ちません。あなたは正確に何を達成しようとしていますか? –