Мониторинг соединения с БД Entity Framework (сначала код 4.3)
Мне интересно, каков наилучший подход к управлению / мониторингу соединения с базой данных сервера с использованием Entity Framework.
Я знаю, что контекст БД EF или контекст объекта делают основные биты за вас. Однако в нашем сценарии пользователь может отключить сетевой кабель от клиента или остановить сервер на компьютере-сервере и т. Д.
Сервер БД <-> Сетевой <-> Толстый Клиент (EF)
Следовательно, в приведенном выше сценарии, если сеть выходит из строя и клиент пытается выполнить любую операцию, требующую доступа к данным, возникнет исключение (базовый поставщик не удалось открыть).
Каков наилучший подход для обнаружения потери соединения с БД, чтобы клиентское приложение (где находится контекст БД / UoW, Rep и т. Д.) Могло корректно завершиться сбоем?
Одно из решений, которое я видел, состоит в том, чтобы открыть ручное подключение к БД сервера (DBConnection), а затем опросить БД с помощью таймера в C# и записи в таблицу контрольных сигналов. Затем ловит исключение, когда это происходит. Это похоже на огромный взлом для меня.
Любая помощь будет оценена... Спасибо заранее.