コンパイル時にオブジェクトの が常にわかるとは限りませんType
が、 のインスタンスを作成する必要がある場合がありますType
。
から新しいオブジェクト インスタンスを取得するにはどうすればよいですかType
?
ベストアンサー1
Activator
ルート名前空間内のクラスは非常System
に強力です。
コンストラクターなどにパラメータを渡すためのオーバーロードが多数あります。次のドキュメントを確認してください。
http://msdn.microsoft.com/en-us/library/system.activator.createinstance.aspx
または(新しいパス)
https://learn.microsoft.com/en-us/dotnet/api/system.activator.createinstance
以下に簡単な例をいくつか示します。
ObjectType instance = (ObjectType)Activator.CreateInstance(objectType);
ObjectType instance = (ObjectType)Activator.CreateInstance("MyAssembly","MyNamespace.ObjectType");