Environment.StackTrace プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のスタック トレース情報を取得します。
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
プロパティ値
スタック トレース情報を格納している文字列。 この値は、Empty の場合もあります。
例
StackTraceプロパティの例を次に示します。
// 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()'
'
注釈
プロパティは StackTrace 、メソッド呼び出しを時系列順に逆順に一覧表示します。つまり、最新のメソッド呼び出しが最初に記述され、スタック上のメソッド呼び出しごとに 1 行のスタック トレース情報が一覧表示されます。 ただし、 プロパティは、最適化中に StackTrace 発生するコード変換のために、期待した数のメソッド呼び出しを報告しない場合があります。
注意
クラス別のスタック トレース情報の階層ビューには、 クラスを使用します StackTrace 。
プロパティは StackTrace 、各メソッド呼び出しのスタック トレース情報を次のように書式設定します。
"at FullClassName
.MethodName
(MethodParams
) in FileName
:line LineNumber
"
リテラル "at" の前には 3 つのスペースが付き、デバッグ シンボルが使用できない場合は、"in" で始まる部分文字列全体が省略されます。 プレースホルダー、、MethodName
、FullClassName
MethodParams
FileName
および LineNumber
は実際の値に置き換えられ、次のように定義されます。
FullClassName
名前空間を含むクラスの完全な名前。
MethodName
メソッドの名前。
MethodParams
パラメーターの型と名前のペアの一覧。 各ペアはコンマ (",") で区切られます。 パラメーターを受け取っていない場合 MethodName
、この情報は省略されます。
FileName
メソッドが宣言されているソース ファイルの MethodName
名前。 デバッグ シンボルが使用できない場合、この情報は省略されます。
LineNumber
呼び出し履歴にある FileName
命令の ソース コード MethodName
を含む 内の行の番号。 デバッグ シンボルが使用できない場合、この情報は省略されます。
文字列は Environment.NewLine 、スタック トレースの各行を終了します。
適用対象
.NET