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à

String

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 per prima e viene elencata una riga di informazioni di analisi dello stack per ogni chiamata al metodo nello stack. Tuttavia, la StackTrace proprietà potrebbe non segnalare il numero di chiamate di metodo come previsto a causa delle trasformazioni del codice che si verificano durante l'ottimizzazione.

Nota

Per una visualizzazione gerarchica delle informazioni di analisi dello stack per classe, usare la StackTrace classe .

La StackTrace proprietà formatta le informazioni di analisi 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 che inizia con "in" viene omessa se i simboli di debug non sono disponibili. I segnaposto, FullClassName, MethodName, FileNameMethodParams, e LineNumbervengono 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 tipo/nome di parametro. Ogni coppia è separata da una virgola (","). Queste informazioni vengono omesse se MethodName non accetta 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 presente nello stack di chiamate. Queste informazioni vengono omesse se i simboli di debug non sono disponibili.

La Environment.NewLine stringa termina ogni riga dell'analisi dello stack.

Si applica a