Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 获取SQL Server CLR运行时引发的错误的行号_.net_Sql Server_Error Handling_Clr - Fatal编程技术网

.net 获取SQL Server CLR运行时引发的错误的行号

.net 获取SQL Server CLR运行时引发的错误的行号,.net,sql-server,error-handling,clr,.net,Sql Server,Error Handling,Clr,我已经创建了一个在SQL 2k5上运行的CLR存储过程,我想知道是否有任何方法可以获取.NET代码引发的异常的行号。当抛出一个异常时,我会得到一些与 Msg 6522,16级,状态1,程序myProcedure,第0行 在执行用户定义例程或聚合“myProcedure”期间发生.NET Framework错误: 异常:测试异常 系统。例外情况: 在DummyDLL.myProcedure处(字符串dummyInput) 是否有某种方法可以加载程序集以提供特定的行号,而不仅仅是抛出错误的函数?程

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

Msg 6522,16级,状态1,程序myProcedure,第0行 在执行用户定义例程或聚合“myProcedure”期间发生.NET Framework错误: 异常:测试异常 系统。例外情况: 在DummyDLL.myProcedure处(字符串dummyInput)

是否有某种方法可以加载程序集以提供特定的行号,而不仅仅是抛出错误的函数?程序集本身是用.pdb编译的,但在我最初加载程序集时,SQL 2k5似乎没有读入它


谢谢

我不确定注册PDB是否也会给您提供行号(理论上应该是这样)

您确定正确注册了PDB吗?下面告诉您如何执行此操作:

基本上,语法是:

CREATE ASSEMBLY Asm1 FROM 'MyAssembly.dll'
GO
ALTER ASSEMBLY Asm1 ADD FILE FROM 'MyAssembly.pdb'
GO

虽然这允许我使用调试器实际进入CLR存储过程,但不幸的是,我仍然无法在异常中获取行号。但是提示仍然是+1,因为现在至少我可以使用调试器了。