Avatar ·

Comment obtenir le nom de la classe actuelle en C# (nom de la classe elle-même) ?

Bonjour à tous ! Je suis un développeur C# débutant et j'ai rencontré un problème. J'écris un petit logger pour mon application et j'ai besoin que chaque message de log indique automatiquement le nom de la classe à partir de laquelle la méthode de logging a été appelée. J'essaie différentes méthodes, mais rien ne fonctionne comme je le souhaite. Voici mon code : ```csharp public class MyClass { public void DoSomething() { Logger.Log("Début de l'opération"); // ... du code } } public static class Logger { public static void Log(string message) { // Je veux obtenir "MyClass" ici string className = ???? ; // que mettre ici ? Console.WriteLine($"[{className}] {message}"); } } ``` J'ai essayé d'utiliser `typeof(MyClass).Name`, mais cela code en dur le nom de la classe, et si je copie ce code dans une autre classe, je dois le changer. J'ai essayé via `MethodBase.GetCurrentMethod().DeclaringType.Name`, mais cela retourne "Logger" au lieu de "MyClass". J'ai aussi vu quelque part `this