我是 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!
}
}
}