我创建了一个在SQL 2k5上运行的CLR存储过程,我想知道是否有任何方法可以获取.NET代码引发的异常行号。当抛出异常时,我得到的东西与

消息6522,级别16,状态1,过程myProcedure,第0行
用户定义的例程或聚合“myProcedure”的执行过程中发生了.NET Framework错误:
System.Exception:测试异常
System.Exception:
在DummyDLL.myProcedure(字符串dummyInput)


有什么方法可以加载程序集以给我特定的行号,而不仅是引发错误的函数?程序集本身是使用.pdb编译的,但是当我最初加载程序集时,SQL 2k5似乎没有读取它。

谢谢!

最佳答案

我不确定是否也注册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

关于.net - 获取SQL Server CLR运行时中引发的错误的行号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/357145/

10-11 00:16
查看更多