我目前有一个 ASP.NET 应用程序,它通过存储过程处理对数据库的所有调用,我们处理应用程序端的所有 SQL 事务。
我的问题是我需要在我的存储过程中抛出一个异常,这样它就可以在应用程序中被捕获并且事务可以回滚。我目前已经尝试过 RAISERROR 和 THROW,但它们只返回消息,实际上不会导致异常。
如有任何帮助,我们将不胜感激。
谢谢
最佳答案
存储过程中 RAISERROR()
调用的严重级别必须大于或等于 16,以便在调用端生成 SqlException
。以下是将生成 SqlException
的 RAISERROR()
示例:
RAISERROR ('Error raised in TRY block.', -- Message text.
16, -- Severity.
1 -- State.
);
关于c# - 如何将 SQL 异常抛回给调用的 asp.net 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20224467/