在C#中存储SqlServer的raiserror消息

时间:2009-06-08 04:03:30

标签: c# sql-server tsql error-handling

如何在C#中存储SQLSERVER的raiserror消息?

2 个答案:

答案 0 :(得分:17)

这取决于severity of your RAISERROR。严重性1-10被视为信息消息,不会破坏C#客户端的流量,即。他们不会抛出异常。这些信息消息将触发您的连接上的InfoMessage事件。

如果RAISERROR的严重性在10到16之间被认为是错误,并且您的SqlCommand.Execute将抛出异常,您可以捕获。

高于17的严重性不适合您使用,它们仅供引擎使用,以指示可能使数据库脱机或关闭实例的严重问题。在技​​术上不可能将严重性超过25的错误引发,您的严重性为100的示例就是愚蠢。

答案 1 :(得分:2)

看看:

http://www.sommarskog.se/error-handling-I.html#ADO.Net

特别是:SqlClient部分。 SqlError类为您提供所需的所有信息。