私はC#が初めてです。
リフレクションを使用して、選択したオブジェクトのすべてのメソッドを反復処理し、それを実行するアプリケーションを作成しました。
問題は、のようMethodInfo[] methodInfos = typeof(ClassWithManyMethods).GetMethods();
なメソッドも返すことです。クラス用に特別に宣言されたメソッドのみを含めたいと思います。ToString
GetType
私のコードを見てください:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Reflection;
namespace Reflection4
{
class ClassWithManyMethods
{
public void a()
{
Console.Write('a');
}
public void b()
{
Console.Write('b');
}
public void c()
{
Console.Write('c');
}
}
class Program
{
static void Main(string[] args)
{
// get all public static methods of MyClass type
MethodInfo[] methodInfos = typeof(ClassWithManyMethods).GetMethods();
ClassWithManyMethods myObject = new ClassWithManyMethods();
foreach (MethodInfo methodInfo in methodInfos)
{
Console.WriteLine(methodInfo.Name);
methodInfo.Invoke(myObject, null); //problem here!
}
}
}