using System;
using System.Reflection;
public class DynamicCall
{
public static void TestMethod(int a,int b)
{
System.Console.WriteLine("a="+a.ToString()+" b="+b.ToString());
}
public void TestMethod2()
{
System.Console.WriteLine("test Method2");
}
public static void Main()
{
DynamicCall dCall = new DynamicCall();
//型の取得
Type t = typeof(DynamicCall);
//メソッドの取得
MethodInfo mInfo = t.GetMethod("TestMethod");
//メソッド呼び出しstaticメソッドの場合は、nullでOK
mInfo.Invoke(null,new object[] {10,20});
//メソッドの取得
mInfo = t.GetMethod("TestMethod2");
//メソッド呼び出し通常メソッドの場合は、
//一番目の引数にインスタンス変数を渡す
mInfo.Invoke(dCall,null);
}
}
using System.Reflection;
public class DynamicCall
{
public static void TestMethod(int a,int b)
{
System.Console.WriteLine("a="+a.ToString()+" b="+b.ToString());
}
public void TestMethod2()
{
System.Console.WriteLine("test Method2");
}
public static void Main()
{
DynamicCall dCall = new DynamicCall();
//型の取得
Type t = typeof(DynamicCall);
//メソッドの取得
MethodInfo mInfo = t.GetMethod("TestMethod");
//メソッド呼び出しstaticメソッドの場合は、nullでOK
mInfo.Invoke(null,new object[] {10,20});
//メソッドの取得
mInfo = t.GetMethod("TestMethod2");
//メソッド呼び出し通常メソッドの場合は、
//一番目の引数にインスタンス変数を渡す
mInfo.Invoke(dCall,null);
}
}
0 件のコメント:
コメントを投稿