同步2个数据库时DbNotProvisioned异常

时间:2011-04-19 13:31:54

标签: sql-server-2008 synchronization sql-server-ce data-synchronization

您好以下是我的代码...我正在尝试同步2个数据库.. 但得到例外的例外:

DbNotProvisioned例外

无法完成当前操作,因为数据库未配置为同步,或者您没有同步配置表的权限。

        private void btnSync_Click(object sender, EventArgs e)
        {
            //create a connection to the second compact database
            SqlCeConnection clientConn = new SqlCeConnection(@"Data Source='E:\SyncClient.sdf'");
            //create connection to the server database
            SqlConnection serverConn = new SqlConnection(@"Data Source=.\sqlexpress; Initial Catalog=SyncDB; Integrated Security=True");

            // create a sync orchestrator
            SyncOrchestrator syncOrchestrator = new SyncOrchestrator();

            // set the local provider to a CE sync provider associated with the
            // ProductsScope in the Sync Compact DB 2 database
            syncOrchestrator.LocalProvider = new SqlCeSyncProvider("ProductsScope", clientConn);

            // set the remote provider to a server sync provider associated with the
            // ProductsScope in the Sync DB server database
            syncOrchestrator.RemoteProvider = new SqlSyncProvider("ProductsScope", serverConn);

            // set the diretion to Upload and Download
            syncOrchestrator.Direction = SyncDirectionOrder.UploadAndDownload;

            // execute the synchronization process
            SyncOperationStatistics syncStats = syncOrchestrator.Synchronize();


            //print sync statistics
            string message="Start Time: "+syncStats.SyncStartTime+"\nTotal Changes Uploaded: "+syncStats.UploadChangesTotal;

            MessageBox.Show(message);


        }

1 个答案:

答案 0 :(得分:2)

您是否已配置数据库?如果没有,Sync Framework附带的文档提供了这样做的教程。或者你可以在这里查看:http://msdn.microsoft.com/en-us/library/ee617382(v=SQL.110).aspx