我尝试捕获/获取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)。“
答案 0 :(得分:1)
查看异常的.InnerException
属性。
请参阅MSDN Documentation了解相关信息。
您也可以使用.ErrorCode
属性或仅使用消息生成的哈希码,每个错误消息的哈希码都不同:
ex.Message.GetHashCode