Ler em inglês

Compartilhar via


Environment.StackTrace Propriedade

Definição

Obtém informações do rastreamento de pilha atual.

C#
public static string StackTrace { get; }

Valor da propriedade

Uma cadeia de caracteres que contém informações do rastreamento de pilha. Este valor pode ser Empty.

Exemplos

O exemplo a seguir demonstra a StackTrace propriedade .

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

Comentários

A StackTrace propriedade lista as chamadas de método em ordem cronológica inversa, ou seja, a chamada de método mais recente é descrita primeiro e uma linha de informações de rastreamento de pilha é listada para cada chamada de método na pilha. No entanto, a StackTrace propriedade pode não relatar quantas chamadas de método forem esperadas devido a transformações de código que ocorrem durante a otimização.

Observação

Para uma exibição hierárquica das informações de rastreamento de pilha por classe, use a StackTrace classe .

A StackTrace propriedade formata as informações de rastreamento de pilha para cada chamada de método da seguinte maneira:

"em FullClassName.MethodName(MethodParams) em FileName :line LineNumber "

O literal "at" é precedido por três espaços e toda a subcadeia de caracteres que começa com "in" será omitida se os símbolos de depuração não estiverem disponíveis. Os espaços reservados, FullClassName, MethodName, MethodParams, FileNamee LineNumber, são substituídos por valores reais e são definidos da seguinte maneira:

FullClassName O nome completo da classe, incluindo o namespace .

MethodName O nome do método.

MethodParams A lista de pares tipo/nome de parâmetro. Cada par é separado por uma vírgula (","). Essas informações serão omitidas se MethodName não tiver parâmetros.

FileName O nome do arquivo de origem em que o MethodName método é declarado. Essas informações serão omitidas se os símbolos de depuração não estiverem disponíveis.

LineNumber O número da linha em FileName que contém o código-fonte de MethodName para a instrução que está na pilha de chamadas. Essas informações serão omitidas se os símbolos de depuração não estiverem disponíveis.

A Environment.NewLine cadeia de caracteres encerra cada linha do rastreamento de pilha.

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0