1

Nhibernateを使用します。

いくつかの列に一意のインデックスを持つテーブルにいくつかの値を挿入しようとしています。

特定の挿入によって、一意の制約に違反したために例外が発生するかどうかを知りたいのですが。

では、どの特定の例外タイプをキャッチする必要がありますか?私はこの特定のものだけを捕まえて、他のすべてを上げたいだけです。

どうもありがとう!

4

2 に答える 2

2

特別な例外はありません。ADO NETの例外をキャッチし、内部の例外テキストを確認する必要があります。

私見あなたのアプローチはより適切ではありません。データが一意の制約に違反するかどうかを挿入前に確認するには、DBにクエリを実行する必要があります。含まれている場合は、レコードを挿入しません。

于 2010-04-06T18:30:43.223 に答える
0

を実装する必要がありますISQLExceptionConverter

例については、 NHibernateISqlExceptionConverterおよびhttp://fabiomaulo.blogspot.com/2009/06/improving-ado-exception-management-in.htmlを使用してカスタム例外を確認してください。

于 2010-04-06T20:29:18.070 に答える