Мониторинг соединения с БД Entity Framework (сначала код 4.3)

Мне интересно, каков наилучший подход к управлению / мониторингу соединения с базой данных сервера с использованием Entity Framework.

Я знаю, что контекст БД EF или контекст объекта делают основные биты за вас. Однако в нашем сценарии пользователь может отключить сетевой кабель от клиента или остановить сервер на компьютере-сервере и т. Д.

Сервер БД <-> Сетевой <-> Толстый Клиент (EF)

Следовательно, в приведенном выше сценарии, если сеть выходит из строя и клиент пытается выполнить любую операцию, требующую доступа к данным, возникнет исключение (базовый поставщик не удалось открыть).

Каков наилучший подход для обнаружения потери соединения с БД, чтобы клиентское приложение (где находится контекст БД / UoW, Rep и т. Д.) Могло корректно завершиться сбоем?

Одно из решений, которое я видел, состоит в том, чтобы открыть ручное подключение к БД сервера (DBConnection), а затем опросить БД с помощью таймера в C# и записи в таблицу контрольных сигналов. Затем ловит исключение, когда это происходит. Это похоже на огромный взлом для меня.

Любая помощь будет оценена... Спасибо заранее.

0 ответов

Другие вопросы по тегам