Finde overloaded metode via reflection
Hej.Jeg har et stykke kode, der benytter reflection til at finde en række metoder, der er kandidater til kørsel. Koden virker sådanset fint nok, bortset fra at jeg gør noget i omvendt rækkefølge. Jeg finder først alle metoder der matcher på en række navne. Derefter finder jeg den metode der tager det rette antal parametere. Men jeg finder parametre ved at binde en metode. Men her får jeg et problem med overloadede metoder.
Er der nogen der har en løsning på mit problem. Jeg antager at jeg kunne løse det ved at finde parameterantal og typer før jeg finder til metoden. Men hvordan gør jeg det.
Min kode er som følger:
Assembly asm = Assembly.GetEntryAssembly();
foreach(Type asmType in asm.GetTypes()) {
if (asmType.BaseType.ToString() == "MY_BASE_CLASS") {
MemberInfo[] members = asmType.GetMembers(BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly);
foreach (MemberInfo mem in members) {
if (mem.MemberType == MemberTypes.Method) {
string name = mem.Name;
if (foundBoundedMethods.Contains(name)) {
MethodInfo invokedMethod = asmType.GetMethod(name);
