正在处理Sql自定义异常
本文关键字:自定义异常 Sql 处理 | 更新日期: 2023-09-27 18:23:48
如何识别从带有c#代码的sql存储过程中引发的自定义错误消息?
存储过程错误将像一样出现
RAISERROR (N'This is message %s %d.', -- Message text.
10, -- Severity,
1, -- State,
N'number', -- First argument.
5); -- Second argument.
从上面,如何识别错误是自定义错误消息。像这个
try{
--actual code here
}
catch(SqlException ex)
{
--how to check here that the exception is custom one
}
当您提出错误时,您可以提供MessageId而不是Message文本。此编号将在异常:的Number
属性中找到
SQL:
RAISERROR(50001, 12, 1)
C#:
if (sqlException.Number == 50001)
{
throw new CustomSQLException(//whatever);
}