2012-01-08 2 views
6

Windows Azure上で動作する.NETアプリケーションがあり、NHibernateを使用してSQL Azureデータベースに接続しています。時にはそれはここでは例で説明したようにSQL Azureの中に一時的な障害を処理するために再試行ロジックを追加する必要があります -SQL Azureで一時的な障害を処理するためにNHibernateに再試行ロジックを追加するにはどうすればよいですか?

http://social.technet.microsoft.com/wiki/contents/articles/retry-logic-for-transient-failures-in-sql-azure.aspx

誰かがNHibernateのでこれを行う方法でに私を指すことができますか?理想的には、これをNHibernateレベルで行い、すべての単一呼び出しをラップするのではなく、私はここに概説として、他のORMのため.netTiers(http://nettiers.comを)これを行うことができました -

http://blog.ehuna.org/2010/01/how_to_stop_getting_exceptions.html

私が検索しなかったとのIDbCommandインターフェイスのカスタム実装を使用して言及し、いくつかの答えを見つけた -

Intercept SQL statements containing parameter values generated by NHibernate

しかし、私はこれがNHibernate 3.2で動作するのかどうかはわかりません。私は修正できる明確な例を探しています。

NHibernateが自動的にSQL Azureへの呼び出しを再試行できますか? 3回の再試行と、それぞれの間で100msの待機があるとします.3回の再試行後も、まだ失敗した場合、例外をスローする必要があります。

答えて

1

おそらく、これはあなたを助けることができます: http://www.objectreference.net/post/NHibernate-and-Execution-Plans.aspxここには、あなたがそれをダウンロードして遊ぶことができるクラスがあり、いくつかのオーバーライドがあります。 http://elliottjorgensen.com/nhibernate-api-ref/NHibernate.Driver/SqlClientDriver.html

私はそれが私が似たような状況スルーつもりです、とにかく役に立てば幸い:

も同様に、このリンクをご確認ください。

よろしく、

関連する問題