【发布时间】:2011-08-08 13:10:39
【问题描述】:
是否有任何智能/最佳方法可以从 SqlException 消息中获取唯一索引名称?像下面这样:
无法在对象“partners.Partner”中插入重复的键行 唯一索引“IX_Partner_SerialId”。声明已终止。
我需要得到IX_Partner_SerialId 而不必操作异常消息字符串?类似于异常对象中的变量?
【问题讨论】:
-
为什么不能操作字符串?
-
我可以操作字符串,但我确信可能有一种聪明的方式,比如字典存储这些变量,以便我们可以使用它?如果没有其他选择,那么这将是唯一的方法。
-
我不认为 SQL 输出异常的详细信息 - 它在消息中,您可能会得到的只有这些。如果它传递了一个 URN 或其他导致错误的东西会很好,但是有太多的可能性可以有效地建模。
-
您可以在此处查看有关异常的所有信息:msdn.microsoft.com/en-us/library/…
标签: sql-server exception ado.net sqlexception unique-index