2016-08-19 16 views
0

キャッチブロックでUnique/Primary key Exceptionの番号(2627)を取得しようとしています。.Netの例外番号をキャッチ

例外番号はe.InnerException.InnerException(画像のように)enter image description here

プロパティとして提供されています。しかし、私はその番号を取得しようとすると、私が取得 - 「例外」はありません

  1. (疑問符付きの画像を参照してください)..「ナンバー」の定義が含まれているのはなぜ私もそれが、この番号を取得することはできませんよ明らかに不動産です
  2. 例外番号を取得する方法を教えてください。 e.InnerException.InnerExceptionNumber性質を持っていないタイプException、であるためだ

答えて

1

Numberプロパティにアクセスするには、予想されるランタイムタイプe.InnerException.InnerExceptionにキャストする必要があります。

この場合、ランタイムタイプはSqlExceptionのようです。そうであれば、このように時計を表現することができます(C#を使用していると仮定します)。

((SqlException)e.InnerException.InnerException).Number