We are having a client-server architecture where client goes offline when connects remotely to server. Server is essentially a SQL Server 2008, with few tables each with thousands of records. Each client application (WPF) would require to store replica of Server data for their offline use (in SQL Express?). And ideally when client application starts up it would hit the server for fetching new changes over there and sync its database to have same data as of the Server (without much of user interaction).
I'm looking for 100% code oriented solution, which can be deployed to remote clients without time consuming setup procedures or that require user intervention to complete. I've used Microsoft Sync Framework v1 and its ADO.NET Sync Services to handle similar scenario a year ago. It turned to be a nightmare with table restructuring, writing SPROCs for every other change tracking scenarios, and batching was painful too. Microsoft has recent released an updated version of Sync Framework with some new features. I haven't got time to evaluate those features yet.
Is there any other tools / technologies to synchronize offline databases with a Server? Samples, documentation, suggestions are appreciated.