検索
クラスの名称となる文字列から、そのクラスのインスタンスを生成します。
1|using System; 2|using System.Runtime; 3| 4|namespace ioo.Sample.CreateInstance 5|{ 6| public class TestClass 7| { 8| public TestClass(){ 9| Console.WriteLine("TestClass Created."); 10| } 11| } 12| 13| public class Class1 14| { 15| [STAThread] 16| static void Main(string[] args){ 17| CreateInstance("ioo.Sample.ClassInstance.TestClass"); 18| } 19| 20| private static void CreateInstance(string className){ 21| ObjectHandle handle = Activator.CreateInstance(null, className); 22| TestClass instance = (TestClass)handle.Unwrap(); 23| } 24| 25| } 26|}
クラスの名称は、完全修飾名で指定します。
CreateInstanceの第1引数は、アセンブリ名称を指定します。nullの場合は実行中のアセンブリ指定となります。