2

SQL 2k5 で実行している CLR ストアド プロシージャを作成しましたが、.NET コードによってスローされた例外の行番号を取得する方法があるかどうか疑問に思っています。例外がスローされると、次の行に沿って何かを取得します

メッセージ 6522、レベル 16、状態 1、プロシージャ myProcedure、行 0 ユーザー定義ルーチンまたは集計 "myProcedure" の実行中に .NET Framework エラーが発生しました: System.Exception: テスト例外 System.Exception: DummyDLL.myProcedure で (文字列のダミー入力)。

エラーがスローされた関数だけでなく、特定の行番号を取得するためにアセンブリをロードする方法はありますか? アセンブリ自体は .pdb でコンパイルされましたが、最初にアセンブリをロードしたときに SQL 2k5 がそれを読み取っていないようです。

ありがとう!

4

1 に答える 1

4

PDB を登録しても行番号が表示されるかどうかはわかりません (理論的にはそうなるはずです)。

PDB を正しく登録していますか? その方法は次のとおりです。

http://blogs.msdn.com/ericnel/archive/2005/03/18/398534.aspx

基本的に、構文は次のとおりです。

CREATE ASSEMBLY Asm1 FROM 'MyAssembly.dll'
GO
ALTER ASSEMBLY Asm1 ADD FILE FROM 'MyAssembly.pdb'
GO
于 2009-01-07T03:53:39.937 に答える