【发布时间】:2011-11-03 21:28:20
【问题描述】:
我的 C# 客户端中有一个 try 块,它执行 Oracle PL/SQL 存储过程和一个使用 Exception 类的 catch 块。
在存储过程中,如果在数据处理过程中遇到特定条件,则使用raise_application_error引发异常。
示例: raise_application_error(-20001, myErrMsg)
然后我想捕捉这个异常并在 C# 客户端中显示这个特定的消息。
对于所有其他与数据库相关的错误(例如约束失败、连接错误),我想捕获它们并显示在 C# 客户端的自定义错误消息中。
在我的catch 块中,我是否应该在异常消息字符串中搜索字符串ORA-20001,然后将其传播到客户端,以确定是否从过程中抛出了上述异常?
【问题讨论】: