区分System.Data.SqlClient.SqlException引发的不同错误

区分System.Data.SqlClient.SqlException引发的不同错误,sql,ado.net,Sql,Ado.net,没有可以在System.Data.SqlClient.SqlException上检查的错误代码。我想将其中一些异常映射到特定于应用程序的异常,但我不想解析错误消息本身(出于已知原因)。例如,当一个方法试图删除一个对象时,我希望它能够区分操作失败是因为数据库中不存在请求的对象,还是因为违反了外键约束。关于实现这一点的优雅方法有什么想法吗?看看。什么让你认为没有错误代码?请看下面的SLaks答案,然后我建议你问问自己,为什么你会这么想。你可能错过了别的东西。

没有可以在System.Data.SqlClient.SqlException上检查的错误代码。我想将其中一些异常映射到特定于应用程序的异常,但我不想解析错误消息本身(出于已知原因)。例如,当一个方法试图删除一个对象时,我希望它能够区分操作失败是因为数据库中不存在请求的对象,还是因为违反了外键约束。关于实现这一点的优雅方法有什么想法吗?

看看。

什么让你认为没有错误代码?请看下面的SLaks答案,然后我建议你问问自己,为什么你会这么想。你可能错过了别的东西。