2009-07-01 8 views
7

型SqlExceptionの例外ハンドラがあり、デッドロックが発生したかどうかを判断する例外のSqlException.Numberプロパティを調べています(1205)。私はカトリックではなく、SqlException.Number == 1205を書く代わりに、私はSqlException.Number == SqlExceptionNumberEnum.DeadLockVictimに類似した何かを生成することができる参照する列挙型ですか?.NET SqlClientエラー番号列挙型

潜在的なエラーメッセージ/数値のせん断容積のために実現できないかもしれませんが、質問する価値があると考えました。ありがとう!

答えて

1

私には分かりません。特に、sp_addmessageで独自のエラー番号を定義することができ、SQL Serverバージョンごとにエラーが変化(増加)するため、(たとえば)SQL Server 2008で.NET 2.0を使用していた場合、あなたの数字は存在するでしょう。

1

残念ながら、私はこれが実現可能ではないと思います。あなたは次のクエリを実行する場合、

select * from sys.messages where language_id=1033 and severity between 11 and 16 

それは千6以上の行を生成します。あなたはテーブルを解析し、各メッセージを表すconstプロパティを持つC#クラスを生成する小さなアプリケーションを書くことができますが、それはおそらく努力に値するものではありません。