私はメソッドのAssertを(書いた):私は、行と列の両方がトリガ0に等しいなければならないのはなぜ.NETたStackFrameと現在の行/列
[System.Diagnostics.Conditional("DEBUG")]
internal static void Assert(bool condition)
{
if (!condition)
{
var message =
"Line:" + (new System.Diagnostics.StackFrame(1)).GetFileLineNumber() + "\r\n" +
"Column:" + (new System.Diagnostics.StackFrame(1)).GetFileColumnNumber() + "\r\n" +
"Where:" + (new System.Diagnostics.StackFrame(1)).GetMethod().Name;
Log("ASSERTION", message);
}
}
?これは、Debug.Assert(false)が呼び出される場所であるはずです。
よろしく、あなたがStackFrame(int, bool)
オーバーロードを使用し、2番目の引数としてtrue
を指定する必要が
なぜあなた自身のアサートメソッドを書いていますか? –
自分のログシステムに書き込む必要があるためです。アセンブリはSQLCLRトリガーなので、出力は特殊なテーブルに格納されます。 – noober
.pdbは.exe/.dllと同じフォルダにありますか?古いバージョンのモノを使用していますか? – Sklivvz