Feedback

C# - Aktuelle Methode mit StackTrace ermitteln

Veröffentlicht von am 02.11.2009
(3 Bewertungen)

Um den Namen der aktuellen Methode zu ermitteln
benutzen wir StackTrace

Namespaces:
using System.Reflection; 

GFU-Schulungen  [Anzeige]

VB.NET Komplett

Sie stehen vo der Aufgabe, individuelle Anwendungen für Windows zu schreiben. Hier ist VB.NET die optimale Sprache. Sie erlernt sich recht leicht und passt sich komplett in die .NET Umgebung von Microsoft ein. Nach der Schulung entwickeln Sie anwenderfreundliche Programme in VB.NET . Mit den objektorientierten Modellen in VB.NET erzeugen Sie außerdem wiederverwendbare Komponenten.

VB.NET Einführung

Die Schulung zeigt Ihnen, wie Sie einfache, benutzerorientierte Programme, die auf Datenbanken zugreifen, in VB.NET eigenständig entwickeln. 

using System.Reflection;




StackTrace stackTra = new StackTrace(); 

string MethodName0 = stackTra.GetFrame(0).GetMethod().Name; //Aktuelle MethodenName

string MethodName1 = stackTra.GetFrame(1).GetMethod().Name; //Methode davor

2 Kommentare zum Snippet

Günther Foidl schrieb am 16.11.2009:
Zu berücksichtigen ist dass durch Inlining (eine Optimierung des JITer) eine andere Methode zurückgegeben werden kann als erwartet.
Koopakiller schrieb am 26.05.2016:
Als Ergänzung, in den neueren .NET Versionen kann man auch noch das CallerMemberNameAttribute einsetzen. Dieses kann auf Funktionsparameter vom Typ String mit Standardwert angewendet werden. In dem Fall wird dem Parameter der Name des Aufrufers übergeben.
 

Logge dich ein, um hier zu kommentieren!