Environment.StackTrace Environment.StackTrace Environment.StackTrace Environment.StackTrace Property

Определение

Возвращает текущие сведения о трассировке стека.Gets current stack trace information.

public:
 static property System::String ^ StackTrace { System::String ^ get(); };
public static string StackTrace { get; }
member this.StackTrace : string
Public Shared ReadOnly Property StackTrace As String

Значение свойства

Строка, содержащая сведения о трассировке стека.A string containing stack trace information. Это значение может быть равно Empty.This value can be Empty.

Примеры

В следующем примере демонстрируется StackTrace свойство.The following example demonstrates the StackTrace property.

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

Комментарии

StackTrace Свойство перечисляет вызовы метода в обратный хронологический порядок, то есть первый вызов метода описан первым, а для каждого вызова метода в стеке отображается одна строка сведений о трассировке стека.The StackTrace property lists method calls in reverse chronological order, that is, the most recent method call is described first, and one line of stack trace information is listed for each method call on the stack. StackTrace Однако свойство может не сообщать о количестве вызовов метода, как ожидалось, из-за преобразований кода, происходящих во время оптимизации.However, the StackTrace property might not report as many method calls as expected due to code transformations that occur during optimization.

Примечание

Для иерархического представления сведений о трассировке стека по классам используйте StackTrace класс.For a hierarchical view of the stack trace information by class, use the StackTrace class.

StackTrace Свойство форматирует данные трассировки стека для каждого вызова метода следующим образом:The StackTrace property formats the stack trace information for each method call as follows:

"по FullClassNameадресу.MethodName (MethodParams) в FileName : строка LineNumber"at FullClassName.MethodName(MethodParams) in FileName :line LineNumber "

Литералу "at" предшествуют три пробела, а вся подстрока, начинающаяся с "in", опускается, если символы отладки недоступны.The literal "at" is preceded by three spaces, and the entire substring starting with "in" is omitted if debug symbols are not available. FullClassNameЗаполнители, MethodName,,, иLineNumber, заменяются фактическими значениями и определяются следующим образом: MethodParams FileNameThe placeholders, FullClassName, MethodName, MethodParams, FileName, and LineNumber, are replaced by actual values, and are defined as follows:

FullClassNameFullClassName
Полное имя класса, включая пространство имен.The full name of the class, including the namespace.

MethodName
Имя метода.The name of the method.

MethodParams
Список пар типов параметров и имен.The list of parameter type/name pairs. Каждая пара отделяется запятой (",").Each pair is separated by a comma (","). Эти сведения пропускаются, если MethodName не принимает параметров.This information is omitted if MethodName takes no parameters.

FileName
Имя исходного файла, в котором MethodName объявлен метод.The name of the source file where the MethodName method is declared. Эти сведения пропускаются, если отладочные символы недоступны.This information is omitted if debug symbols are not available.

LineNumber
Номер строки в FileName , которая содержит исходный MethodName код для инструкции в стеке вызовов.The number of the line in FileName that contains the source code from MethodName for the instruction that is on the call stack. Эти сведения пропускаются, если отладочные символы недоступны.This information is omitted if debug symbols are not available.

Environment.NewLine Строка завершает каждую строку трассировки стека.The Environment.NewLine string terminates each line of the stack trace.

Безопасность

EnvironmentPermission
для полного доступа к ресурсу, защищенному разрешением.for full access to the resource protected by the permission. Связанное перечисление:UnrestrictedAssociated enumeration: Unrestricted

Применяется к