none
Dataset Synchronization Options RRS feed

  • Question

  • I'm in the process of redesigning an application that was originally developed about 5-6 years ago and trying to figure out what is the best option for redesigning the data access layer.  The application is a Visio Add-in - it takes data created by users in Visio, puts it in a local dataset for local reporting purposes, and synchronizes the information to a database where it is shared with other users.  The amount of data is relatively small and it also typically shared with a very small number of other users.

    The application as it was originally designed used ADO.Net with Table Adapters to do all of the synchronization betweeen the dataset and the database.  Every time the application does an update on the data in the dataset, it also updates the data in the database.  I would like to find a better alternative that does the synchronization of the dataset with the database more automatically and does it more as a background synchronization task.

    I've looked at ADO.Net synchronization services and that looks like the kind of thing I want to use, but it appears to be designed to synchronize a SQL Server CE database with a larger SQL Server database.  Is there some kind of equivalent functionality to easily synchronize a dataset with a SQL Server database?

    Thanks,


    Chuck
    Thursday, December 3, 2009 1:24 PM

Answers

  • This question was answered in another thread...it is not possible to synch a dataset with a SQL Server Compact Edition Dataset.  You need to use other ADO.Net methods to get the data into the Dataset (TableAdapters, etc.).  Once the data is in the SQL Server Compact Edition Dataset, then you can use Sync Services to synch the SQL Server Compact Edition database to another SQL Server database.

    Chuck
    • Marked as answer by chuckc3 Monday, December 7, 2009 5:01 PM
    Monday, December 7, 2009 5:01 PM

All replies

  • Let me clarify my question a little more.  I have a dataset consisting of about 15-20 tables many of which are related to each other and have foreign key constraints to enforce referential integrity.  What I've done in the past is use an individual data adapter or table adapter on each table to perform any updates; and, of course, since many of the tables are related, the updates have to be performed in the right sequence.

    It looks like ADO.Net Sync Services does a lot of that but it seems to be primarily designed around synching something like a SQL Server Compact Edition database with a larger SQL Server database.  I've noticed that the Microsoft Synchronization Framework goes beyond that and provides the capability to synchronize a much broader range of data sources including files.  I was wondering if a similar capability is available for synching a dataset with a database.

    Thanks,

    Chuck
    Friday, December 4, 2009 11:07 AM
  • This question was answered in another thread...it is not possible to synch a dataset with a SQL Server Compact Edition Dataset.  You need to use other ADO.Net methods to get the data into the Dataset (TableAdapters, etc.).  Once the data is in the SQL Server Compact Edition Dataset, then you can use Sync Services to synch the SQL Server Compact Edition database to another SQL Server database.

    Chuck
    • Marked as answer by chuckc3 Monday, December 7, 2009 5:01 PM
    Monday, December 7, 2009 5:01 PM