2012-01-08 9 views
6

Mamy aplikację .NET, która działa na Windows Azure i używa NHibernate do połączenia z bazą danych SQL Azure. Czasami jest to konieczne, aby dodać logikę ponawiania do obsługi przejściowych niepowodzeń w SQL Azure, jak opisano na przykład tutaj -Jak dodać logikę ponowną w NHibernate, aby poradzić sobie z przejściowymi awariami w SQL Azure?

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

Czy ktoś może wskazać mi sposób, w ten sposób z NHibernate? Idealnie chciałbym to zrobić na poziomie NHibernate i nie zawijać każdego połączenia; Udało mi się to zrobić dla innego ORM, .netTiers (http://nettiers.com) jako Przedstawię tutaj -

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

I nie szukać i znaleźć kilka odpowiedzi, które wspominają stosując niestandardową implementację interfejsu IDbCommand -

Intercept SQL statements containing parameter values generated by NHibernate

Ale nie jestem pewien, czy działa z NHibernate 3.2 i szukam wyraźnego przykładu, który mógłbym zmodyfikować.

W jaki sposób mogę automatycznie inicjować połączenia NHibernate z SQL Azure? Powiedzmy 3 powtórzenia, z których każde powinno trwać 100 ms - po 3 powtórzeniach, jeśli nadal się nie powiedzie, powinniśmy rzucić wyjątek.

Odpowiedz

Powiązane problemy