Delegate.CreateDelegateにおける、メソッドを動的に呼び出す方法を紹介します。 サンプル1: //自作クラス public class TestClass { public TestClass() { } public string TestMethod() { return "test"; } } class Program { delegate string TestDelegate(); static void Main(string[] args) { TestDelegate d = Delegate.CreateDelegate(typeof(TestDelegate), Activator.CreateInstance(typeof(TestClass)), "TestMethod") as TestDelegate; string ss = d.Invoke(); Console.WriteLine(ss); } サンプル2: delegate DateTime DateTimeDelegate(); DateTimeDelegate d = Delegate.CreateDelegate( typeof(DateTimeDelegate), Activator.CreateInstance(typeof(DateTime), 2012, 9, 10), "ToUniversalTime") as DateTimeDelegate; DateTime ss = d.Invoke(); Console.WriteLine(ss); 中古車買取実績No.1ガリバー コメント: |