Environment.StackTrace Eigenschaft

Definition

Ruft die aktuellen Stapelüberwachungsinformationen ab.

public:
 static property System::String ^ StackTrace { System::String ^ get(); };
public static string StackTrace { get; }
static member StackTrace : string
Public Shared ReadOnly Property StackTrace As String

Eigenschaftswert

String

Eine Zeichenfolge, die Stapelüberwachungsinformationen enthält. Dieser Wert kann Empty sein.

Beispiele

Im folgenden Beispiel wird die StackTrace -Eigenschaft veranschaulicht.

// Sample for the Environment::StackTrace property
using namespace System;
int main()
{
   Console::WriteLine();
   Console::WriteLine( "StackTrace: ' {0}'", Environment::StackTrace );
}

/*
This example produces the following results:

StackTrace: '   at System::Environment::GetStackTrace(Exception e)
at System::Environment::GetStackTrace(Exception e)
at System::Environment::get_StackTrace()
at Sample::Main()'
*/
// Sample for the Environment.StackTrace property
using System;

class Sample
{
    public static void Main()
    {
    Console.WriteLine();
    Console.WriteLine("StackTrace: '{0}'", Environment.StackTrace);
    }
}
/*
This example produces the following results:

StackTrace: '   at System.Environment.GetStackTrace(Exception e)
   at System.Environment.GetStackTrace(Exception e)
   at System.Environment.get_StackTrace()
   at Sample.Main()'
*/
// Sample for the Environment.StackTrace property
open System

printfn $"\nStackTrace: '{Environment.StackTrace}'"

// This example produces the following results:
//     StackTrace: '   at System.Environment.GetStackTrace(Exception e)
//        at System.Environment.GetStackTrace(Exception e)
//        at System.Environment.get_StackTrace()
//        at <StartupCode$fs>.$Stacktrace.main@()'
' Sample for the Environment.StackTrace property
Class Sample
   Public Shared Sub Main()
      Console.WriteLine()
      Console.WriteLine("StackTrace: '{0}'", Environment.StackTrace)
   End Sub
End Class
'
'This example produces the following results:
'
'StackTrace: '   at System.Environment.GetStackTrace(Exception e)
'   at System.Environment.GetStackTrace(Exception e)
'   at System.Environment.get_StackTrace()
'   at Sample.Main()'
'

Hinweise

Die StackTrace -Eigenschaft listet Methodenaufrufe in umgekehrter chronologischer Reihenfolge auf, d. h. der letzte Methodenaufruf wird zuerst beschrieben, und für jeden Methodenaufruf im Stapel wird eine Zeile mit Stapelüberwachungsinformationen aufgeführt. Allerdings meldet die Eigenschaft aufgrund von Codetransformationen, die während der StackTrace Optimierung auftreten, möglicherweise nicht so viele Methodenaufrufe wie erwartet.

Hinweis

Verwenden Sie für eine hierarchische Ansicht der Stapelüberwachungsinformationen nach Klasse die StackTrace -Klasse.

Die StackTrace -Eigenschaft formatiert die Stapelüberwachungsinformationen für jeden Methodenaufruf wie folgt:

"bei FullClassName.MethodName (MethodParams) in FileName :line LineNumber "

Dem Literal "at" werden drei Leerzeichen vorangestellt, und die gesamte Teilzeichenfolge, die mit "in" beginnt, wird weggelassen, wenn Debugsymbole nicht verfügbar sind. Die Platzhalter , FullClassName, MethodNameMethodParams, FileNameund LineNumberwerden durch tatsächliche Werte ersetzt und wie folgt definiert:

FullClassName Der vollständige Name der -Klasse, einschließlich des Namespace.

MethodName Der Name der -Methode.

MethodParams Die Liste der Parametertyp-Name-Paare. Jedes Paar wird durch ein Komma (",") getrennt. Diese Informationen werden weggelassen, wenn MethodName keine Parameter verwendet werden.

FileName Der Name der Quelldatei, in der die MethodName Methode deklariert wird. Diese Informationen werden weggelassen, wenn Debugsymbole nicht verfügbar sind.

LineNumber Die Nummer der Zeile in FileName , die den Quellcode von MethodName für die Anweisung enthält, die sich in der Aufrufliste befindet. Diese Informationen werden weggelassen, wenn Debugsymbole nicht verfügbar sind.

Die Environment.NewLine Zeichenfolge beendet jede Zeile der Stapelüberwachung.

Gilt für: