.net Core Get Name Of Current Method

3 min read Jun 03, 2024
.net Core Get Name Of Current Method

Obtenir le nom de la méthode actuelle dans .NET Core

En .NET Core, il est souvent nécessaire d'obtenir le nom de la méthode actuelle dans laquelle votre code est en cours d'exécution. Cela peut être utile pour la journalisation, le débogage ou d'autres besoins de diagnostic.

Utiliser MethodBase.GetCurrentMethod()

La façon la plus simple d'obtenir le nom de la méthode actuelle est d'utiliser la méthode statique MethodBase.GetCurrentMethod(). Cette méthode renvoie un objet MethodBase qui représente la méthode actuellement en cours d'exécution. Vous pouvez ensuite accéder au nom de la méthode à l'aide de la propriété Name de l'objet MethodBase.

using System.Reflection;

public class MyClass
{
    public void MyMethod()
    {
        MethodBase method = MethodBase.GetCurrentMethod();
        string methodName = method.Name;

        Console.WriteLine($"Nom de la méthode actuelle : {methodName}");
    }
}

Dans cet exemple, MyMethod() affiche le nom de la méthode actuelle, qui est "MyMethod".

Utiliser une expression lambda

Une autre option consiste à utiliser une expression lambda pour obtenir le nom de la méthode. Cela peut être plus concis que d'utiliser MethodBase.GetCurrentMethod().

public class MyClass
{
    public void MyMethod()
    {
        string methodName = () => MyMethod().Method.Name;

        Console.WriteLine($"Nom de la méthode actuelle : {methodName}");
    }
}

Cette approche utilise une expression lambda qui renvoie le nom de la méthode. La valeur de la lambda est ensuite utilisée pour obtenir le nom de la méthode.

Utiliser le débogueur

Si vous utilisez un débogueur, vous pouvez également obtenir le nom de la méthode actuelle en affichant la pile d'appels. Le débogueur affichera le nom de chaque méthode appelée dans la pile d'appels, y compris la méthode actuelle.

Conclusion

Il existe plusieurs façons d'obtenir le nom de la méthode actuelle dans .NET Core. Choisissez la méthode qui vous convient le mieux en fonction de vos besoins. L'utilisation de MethodBase.GetCurrentMethod() est une approche simple et directe, tandis que les expressions lambda peuvent être plus concises. Le débogueur est également un outil utile pour déterminer le nom de la méthode actuelle.

Related Post


Featured Posts