У нас есть архитектура клиент-сервер, в которой клиент отключается при удаленном подключении к серверу. Сервер - это, по сути, SQL Server 2008 с несколькими таблицами, каждая из которых содержит тысячи записей. Каждому клиентскому приложению (WPF) потребуется хранить реплику данных сервера для автономного использования (в SQL Express?). И в идеале, когда клиентское приложение запускается, оно будет попадать на сервер для получения новых изменений и синхронизации своей базы данных, чтобы иметь те же данные, что и на сервере (без особого взаимодействия с пользователем).
Я ищу решение, на 100% ориентированное на код, которое можно развернуть на удаленных клиентах без трудоемких процедур настройки или без вмешательства пользователя для завершения. Год назад я использовал Microsoft Sync Framework v1 и его службы синхронизации ADO.NET для обработки аналогичного сценария. Это превратилось в кошмар с реструктуризацией таблиц, написанием SPROC для любых других сценариев отслеживания изменений, и пакетная обработка тоже была болезненной. Microsoft недавно выпустила обновленную версию Sync Framework с некоторыми новыми функциями. У меня пока нет времени оценивать эти функции.
Есть ли другие инструменты / технологии для синхронизации автономных баз данных с сервером? Приветствуются образцы, документация, предложения.