Environment.StackTrace-Eigenschaft
Ruft die aktuellen Stapelüberwachungsinformationen ab.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Shared ReadOnly Property StackTrace As String
'Usage
Dim value As String
value = Environment.StackTrace
public static string StackTrace { get; }
public:
static property String^ StackTrace {
String^ get ();
}
/** @property */
public static String get_StackTrace ()
public static function get StackTrace () : String
Eigenschaftenwert
Eine Zeichenfolge, die Stapelüberwachungsinformationen enthält. Dieser Wert kann String.Empty sein.
Ausnahmen
Ausnahmetyp | Bedingung |
---|---|
Die angeforderten Stapelüberwachungsinformationen liegen außerhalb des zulässigen Bereichs. |
Hinweise
Die StackTrace-Eigenschaft listet Methodenaufrufe in umgekehrter chronologischer Reihenfolge auf, d. h., die zuletzt aufgerufene Methode wird zuerst beschrieben. Außerdem wird für jeden Methodenaufruf an den Stapel eine Zeile mit Informationen zur Stapelüberwachung aufgelistet. Die StackTrace-Eigenschaft gibt u. U. nicht die erwartete Anzahl von Methodenaufrufen wieder, da der Code bei der Optimierung möglicherweise verändert wurde.
Die Stapelüberwachungsinformationen für die einzelnen Methodenaufrufe haben das folgende Format:
"bei FullClassName. MethodName (MethodParams) in FileName: Zeile LineNumber"
Dem Literal "at" werden drei Leerzeichen vorangestellt, und die Literale "in" und ":line" werden ausgelassen, wenn keine Debugsymbole verfügbar sind. Die Platzhalter FullClassName, MethodName, MethodParms, FileName und LineNumber werden durch tatsächliche Werte ersetzt, die folgendermaßen definiert sind:
FullClassName
Der vollständige Name der Klasse, einschließlich des Namespace.
MethodName
Der Name der Methode.
MethodParms
Die Liste von Paaren Parametertyp/Parametername. Jedes Paar ist durch ein Komma (",") getrennt. Diese Informationen fehlen, wenn MethodName keine Parameter hat.
FileName
Der Name der Quelldatei, in der die MethodName-Methode deklariert ist. Diese Daten fehlen, wenn keine Debugsymbole zur Verfügung stehen.
LineNumber
Die Nummer der Zeile der Datei FileName, die den Quellcode für denjenigen Befehl aus MethodName enthält, der sich in der Aufrufliste befindet. Diese Daten fehlen, wenn keine Debugsymbole zur Verfügung stehen.
Beispiel
Im folgenden Codebeispiel wird die StackTrace-Eigenschaft veranschaulicht.
' Sample for the Environment.StackTrace property
Imports System
Class Sample
Public Shared Sub Main()
Console.WriteLine()
Console.WriteLine("StackTrace: '{0}'", Environment.StackTrace)
End Sub 'Main
End Class 'Sample
'
'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
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
import System.*;
class Sample
{
public static void main(String[] args)
{
Console.WriteLine();
Console.WriteLine("StackTrace: '{0}'", Environment.get_StackTrace());
} //main
} //Sample
/*
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(String args[])'
*/
.NET Framework-Sicherheit
- EnvironmentPermission für den Vollzugriff auf die durch die Berechtigung geschützte Ressource. Zugeordnete Enumeration: PermissionState.Unrestricted
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0