Современная стратегия синхронизации для приложения Winforms

Мне поручено написать приложение Winforms для небольшой компании, имеющей около 10 мест. Он имеет довольно простую структуру базы данных с таблицами для клиентов, счетов, транзакций, магазинов, транспортных средств и т. Д. Я думаю об использовании базы данных SQL Azure для "основной" базы данных, но приложение критически важно для каждого местоположения и нуждается в иметь "время от времени подключенную" архитектуру, чтобы гарантировать, что она может работать, если и когда Интернет-соединение недоступно, а затем синхронизировать, когда соединение восстановлено.

Я исследовал Microsoft Sync Framework, который кажется лучшим вариантом, но вся документация выглядит несколько лет назад и устарела.

Синхронизация данных Azure выглядела многообещающе, но это больше похоже на инструмент управления типом Azure, тогда как я хочу, чтобы функциональность синхронизации была встроена в клиентское приложение.

Некоторые мобильные решения кажутся интересными, но мне кажется, что мне нужны практически идентичные базы данных SQL Server на клиентском и облачном серверах, и большинство, если не все таблицы, должны оставаться синхронизированными. Я думаю, что самый простой способ сделать это - использовать идентификаторы GUID для каждой сущности и либо Sync Framework, либо использовать мой собственный код для синхронизации.

Итак, я думаю, мои вопросы:

  • Каков обычно рекомендуемый современный подход к созданию периодически подключаемого приложения Winforms?
  • MS Sync Framework по-прежнему актуален?
  • Является ли моя идея иметь идентичные базы данных на клиенте и сервере, использовать идентификаторы GUID для сущностей и либо использовать MS Sync Framework, либо использовать мой собственный код синхронизации как правдоподобный или безумный?

Благодарю.

0 ответов

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