Durchführen von Reflektionsoperationen mit Roslyn

Ich möchte mit Roslyn Reflexionsoperationen für die folgende Klasse ausführen:

public abstract class MyBaseClass
{
    public bool Method1()
    {
        return true;
    }
    public bool Method2()
    {
        return true;
    }
    public void Method3()
    {
    }
}

Grundsätzlich möchte ich das machen, aber mit Roslyn:

BindingFlags flags = BindingFlags.Public | 
                     BindingFlags.Instance;
MethodInfo[] mBaseClassMethods = typeof(MyBaseClass).GetMethods(flags);
foreach (MethodInfo mi in mBaseClassMethods)
{
    if (mi.GetParameters().Length == 0 && mi.ReturnType == typeof(void))
    {
        methodInfos.Add(mi);
    }
    if (mi.GetParameters().Length == 0 && mi.ReturnType == typeof(bool))
    {
        methodInfos.Add(mi);
    }
}

Im Wesentlichen möchte ich eine Liste der Methoden erhalten, die die Kriterien erfüllen, die ich im obigen Reflexionsbeispiel verwendet habe. Wenn jemand eine Website kennt, auf der erklärt wird, wie man Reflection-ähnliche Operationen mit Roslyn ausführt, kann er mich gerne in diese Richtung lenken. Ich habe stundenlang gesucht und kann diesbezüglich anscheinend keine Fortschritte erzielen.

Danke im Voraus,

Bob

Antworten auf die Frage(2)

Ihre Antwort auf die Frage