是否有可能在VB.NET中获取特定类型的OleDbException?

时间:2013-06-06 06:41:50

标签: vb.net oledb oledbexception

我尝试捕获/获取OleDbException的类型以生成正确的错误消息。

此时我确定我捕获了OleDbException,但我想只捕获重复值违规以生成错误消息。

这就是我现在所做的。

ex As OleDb.OleDbException
MessageBox.Show(ex.Errors.Item(1).ToString(), "Error Message", MessageBoxButtons.OK)

输出如下:

  

“违反UNIQUE KEY约束'UC_MyTable'。无法插入   对象'dbo.MyTable'中的重复键。重复的键值是   (PJO,Peter Johanson)。“

1 个答案:

答案 0 :(得分:1)

查看异常的.InnerException属性。

请参阅MSDN Documentation了解相关信息。


您也可以使用.ErrorCode属性或仅使用消息生成的哈希码,每个错误消息的哈希码都不同:

ex.Message.GetHashCode