自定义异常并从异常解析消息
本文关键字:消息 异常 自定义异常 | 更新日期: 2023-09-27 18:10:30
ex.Message = "ORA-20586: SOME TEXT SOME TEXT.'nORA-06512: at '"RMM.LOKAC'", line 116'nORA-06512: at line 2"
catch (Exception ex)
MessageBox.Show(ex.Message);
return false;
}
ex.Message = "ORA-20586: SOME TEXT SOME TEXT.'nORA-06512: at '"RMM.LOKAC'", line 116'nORA-06512: at line 2"
但我需要得到只是"一些文本一些文本"。我怎么能只看文本呢?
ORA-20586表示用户错误http://www.dbmotive.com/support/oracle-error-codes/?type=ORA&errcode=20586数据库为Oracle。
有多种方法可以提取字符串。您可以尝试字符串分割,正则表达式分割或字符串索引搜索。
最好先捕获异常,然后编写更用户友好的消息。如果可能,永远不要暴露应用程序的底层体系结构。
bool success = false;
try {
// you code
success = true; // Notice: Last call of your try routine.
} catch (Exception ex {
if (-1 < ex.Message.IndexOf("ORA-20586")) {
MessageBox.Show("user error");
} else {
MessageBox.Show(ex.Message);
}
}
return success;