Как сохранить глобальный объект DataContext обновленным в разных запущенных экземплярах приложения? - PullRequest
0 голосов
/ 17 ноября 2010

Я использую один глобальный объект DataContext для всего моего приложения. Приложение должно работать в сетевой среде, где несколько его экземпляров работают одновременно с общей базой данных SQL.

Изменения базы данных в одном приложении не отражаются в других экземплярах, пока я не вызову метод DataContext.Refresh. Проблема в том, что эта функция отнимает много времени, и я не могу изменить свой код на использование разных объектов datacontext для разных операций.

Что мне делать, чтобы всегда обновлять объект datacontext в каждом приложении?

1 Ответ

0 голосов
/ 24 марта 2011

RefreshMode Enum - правильный бит. Просто нужно решить, когда его использовать, и правильно использовать DataContext. Представьте DataContext как единицу работы и отметьте режим обновления при подготовке к отправке (например, KeepChanges или что-то в этом роде). Таким образом, информация пользователя выдвигается (или всплывает при конфликте), и она автоматически обновляется с использованием самых свежих данных в базе данных.

Я думаю, что все остальные справедливо указали на неправильность глобального текста данных. Вам нужно будет либо установить время обновления, либо дать пользователю кнопку для обновления, если вы хотите обновлять их отображение чаще. Я не знаю другого пути там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...