Condividi tramite


Environment.StackTrace Proprietà

Definizione

Ottiene informazioni sull'analisi dello stack corrente.

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

Valore della proprietà

Stringa che contiene informazioni sull'analisi dello stack. Il valore può essere Empty.

Esempio

Nell'esempio seguente viene illustrata la StackTrace proprietà .

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

Commenti

La StackTrace proprietà elenca le chiamate al metodo in ordine cronologico inverso, ovvero la chiamata al metodo più recente viene descritta prima e una riga di informazioni sulla traccia dello stack è elencata per ogni chiamata al metodo nello stack. Tuttavia, la StackTrace proprietà potrebbe non segnalare quante chiamate di metodo previste a causa delle trasformazioni di codice che si verificano durante l'ottimizzazione.

Nota

Per una visualizzazione gerarchica delle informazioni di traccia dello stack in base alla classe, usare la StackTrace classe .

La StackTrace proprietà formatta le informazioni di traccia dello stack per ogni chiamata al metodo come indicato di seguito:

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

Il valore letterale "at" è preceduto da tre spazi e l'intera sottostringa a partire da "in" viene omessa se i simboli di debug non sono disponibili. I segnaposto, FullClassName, MethodParamsMethodNameFileNamee LineNumbersono sostituiti da valori effettivi e sono definiti come segue:

FullClassName Nome completo della classe, incluso lo spazio dei nomi.

MethodName Nome del metodo.

MethodParams Elenco di coppie di parametri di tipo/nome. Ogni coppia è separata da una virgola (","). Queste informazioni vengono omesse se MethodName non accettano parametri.

FileName Nome del file di origine in cui viene dichiarato il MethodName metodo. Queste informazioni vengono omesse se i simboli di debug non sono disponibili.

LineNumber Numero della riga in FileName che contiene il codice sorgente da MethodName per l'istruzione che si trova nello stack di chiamate. Queste informazioni vengono omesse se i simboli di debug non sono disponibili.

La Environment.NewLine stringa termina ogni riga della traccia dello stack.

Si applica a