Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/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
Sql server 分析sqlexception错误消息_Sql Server - Fatal编程技术网

Sql server 分析sqlexception错误消息

Sql server 分析sqlexception错误消息,sql-server,Sql Server,我使用C#作为最终用户表单,我想做的是解析从SQL server获取的错误消息。通常,最终用户会得到如图所示的消息。是否有办法解析这些消息,并向最终用户提供他所理解的信息,而不是那些胡言乱语?(如图中所示,“在此上下文中不允许进行名称测试…” 使用Exception.ToString显示完整堆栈跟踪。使用Exception.Message仅获取错误的文本描述部分 此外,您还可以查看和属性,就如何在代码中处理这些异常做出明智的决定。SqlException.Number属性将对应于视图中的一个条

我使用C#作为最终用户表单,我想做的是解析从SQL server获取的错误消息。通常,最终用户会得到如图所示的消息。是否有办法解析这些消息,并向最终用户提供他所理解的信息,而不是那些胡言乱语?(如图中所示,“在此上下文中不允许进行名称测试…”


使用Exception.ToString显示完整堆栈跟踪。使用Exception.Message仅获取错误的文本描述部分

此外,您还可以查看和属性,就如何在代码中处理这些异常做出明智的决定。SqlException.Number属性将对应于视图中的一个条目。例如,1205是死锁异常的数字。如果SqlException.Class=11,则这是一个并发异常


属性是SqlError对象的列表,其中包含有关单个对象的更详细信息。由于对数据库的单个RPC调用可能会导致多个异常,请查看这些错误以查看发生的所有情况。

exception.ToString()通常会生成与图片类似的字符串。异常。消息只包括错误消息,没有堆栈跟踪。

在SQL中报告错误时,总是存在一个两难的问题,SQL消息需要向开发人员传达发生的情况,但也需要向应用程序的用户提供有用的信息。我们开发了一种将SQL消息结构化为XML字符串的技术,该字符串提供有关错误的所有有用信息,允许调用方根据需要使用。您可以在下面的URL上看到我关于代码项目中此技术的文章:


exception.ToString()通常会生成与图片类似的字符串。异常。消息将只包含错误消息,没有堆栈跟踪。这就完成了,非常感谢!转换为正式答复