Passer de la Méthode en Paramètre à l'aide de C#

J'ai plusieurs méthodes de tous avec la même signature (paramètres et valeurs de retour), mais des noms différents et le fonctionnement interne de l'méthodes sont différentes. Je veux passer le nom de la méthode à exécuter à une autre méthode qui vous permettra d'invoquer le passé dans la méthode.

public int Method1(string)
{
    ... do something
    return myInt;
}

public int Method2(string)
{
    ... do something different
    return myInt;
}

public bool RunTheMethod([Method Name passed in here] myMethodName)
{
    ... do stuff
    int i = myMethodName("My String");
    ... do more stuff
    return true;
}

public bool Test()
{
    return RunTheMethod(Method1);
}

Ce code ne fonctionne pas, mais c'est ce que je suis en train de faire. Ce que je ne comprends pas, c'est comment écrire le RunTheMethod code car j'ai besoin de définir le paramètre.

  • Pourquoi ne pas passer un délégué à la place du nom de la méthode?
InformationsquelleAutor user31673 | 2010-01-17