Обновление данных в Entity Framework в случае их изменения на сервере MSSQL

Задачка следующая:

Есть БД MSSQL, к которой подключается около десятка клиентов. Связь с сервером в приложении реализована через Entity Framework 6. Каждый клиент должен определять изменения в базе данных на сервере в режиме реального времени и подтягивать актуальную информацию.

Например. На одном клиенте добавились или удалились данные, на всех остальных клиентах эти данные сразу же обновились.

Данные с БД в приложении планируется отображать в DataGrid WPF.

Может быть подскажете принцип, как проще это сделать. И хотелось бы понять, какой способ загрузки данных использовать (ленивую, прямую или явную).

Мои предположения: запускать таймер (с периодом 1 сек) на опрос БД -> загрузить данные с БД -> привязывать их к ItemSource DataGrid -> обновлять DataGrid. Но всё-же не хочется, чтобы при каждом опросе грузились заново все данные (да и это, мне кажется, глупо), а только те, которые были изменены. Не понимаю пока, как подойти к решению этого вопроса.

Может быть есть какой-то механизм, который может удаленно контролировать изменения в БД и включать какой-нибудь триггер или ещё что.


Ответы (0 шт):