Environment.StackTrace Vlastnost

Definice

Získá aktuální informace trasování zásobníku.

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

Hodnota vlastnosti

Řetězec obsahující informace o trasování zásobníku. Tato hodnota může být Empty.

Příklady

Následující příklad ukazuje StackTrace vlastnost .

// 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()'
'

Poznámky

Vlastnost StackTrace uvádí volání metody v obráceném chronologickém pořadí, to znamená, že nejnovější volání metody je popsáno jako první a jeden řádek trasování zásobníku informace je uveden pro každé volání metody v zásobníku. Vlastnost však StackTrace nemusí hlásit tolik volání metod, kolik byste očekávali kvůli transformacím kódu, ke kterým dochází během optimalizace.

Poznámka

Pro hierarchické zobrazení informací trasování zásobníku podle třídy použijte StackTrace třídu .

Vlastnost StackTrace formátuje informace trasování zásobníku pro každé volání metody takto:

"ve společnosti FullClassName.MethodName(MethodParams) in FileName :line LineNumber "

Literálu "at" předchází tři mezery a pokud nejsou k dispozici symboly ladění, vynechá se celý podřetěžce začínající na "in". Zástupné symboly FullClassName, , MethodName, FileNameMethodParamsa LineNumberse nahradí skutečnými hodnotami a jsou definovány takto:

FullClassName Úplný název třídy, včetně oboru názvů.

MethodName Název metody.

MethodParams Seznam dvojic typ/název parametru. Každý pár je oddělen čárkou (","). Tato informace je vynechána, pokud MethodName nemají žádné parametry.

FileName Název zdrojového souboru, ve MethodName kterém je deklarována metoda. Tato informace je vynechána, pokud nejsou k dispozici symboly ladění.

LineNumber Číslo řádku v FileName , který obsahuje zdrojový kód z MethodName instrukce, která je v zásobníku volání. Tato informace je vynechána, pokud nejsou k dispozici symboly ladění.

Řetězec Environment.NewLine ukončí každý řádek trasování zásobníku.

Platí pro