SQL Server と SQL Server Compact の同期
ここでは、Sync Framework を使用して実行できる一般的な同期タスクの背景情報、手順の内容、および完全なコード例について説明します。Sync Framework を使用して SQL Server データベース (SQL Server Express と SQL Server Compact を含む) を同期する方法を具体的に示します。SQL Server 以外のデータベースの同期の詳細については、「他の ADO.NET 互換データベースの同期」を参照してください。
このセクションの内容
操作方法に関するトピックのサンプル アプリケーション
操作方法に関する各トピックには、1 つのコンソール アプリケーションが含まれています。このアプリケーションは C# と Visual Basic の両方で記述されており、API の特定の機能を示しています。特定のタスクや機能のコード例のみを示す方が簡単ですが、特定の機能を完全なコンテキストで確認すると、Sync Framework の動作を理解しやすくなります。
各アプリケーションには次のクラスが含まれています。
Program
: このクラスは、同期を設定し、Utility
クラスからメソッドを呼び出します。Utility
クラスは、接続文字列情報の保持や同期にかかわるデータベースの変更など、同期に直接関連しないすべての機能を扱います。SampleSyncOrchestrator
: このクラスは SyncOrchestrator から派生したもので、同期オプションを設定して統計を表示します。
すべてのアプリケーション コードは Visual Studio 2008 と SQL Server 2008 でテスト済みです。
各アプリケーションを実行するには
「データベース プロバイダーのセットアップ スクリプトに関するトピック」の「SQL Server のコラボレーション シナリオのテーブル」にある Transact-SQL スクリプトを実行します。このスクリプトでは 3 つのデータベースが作成され、最初のデータベースには一連のテーブルが作成されます。
「データベース プロバイダーの Utility クラスに関するトピック」から
Utility
クラスのコードをコピーします。実行する各アプリケーションにこのコードを貼り付けるか、コードから DLL を作成して、その DLL を各アプリケーションから参照します。このクラスのデータベース接続文字列ではデータベース名にlocalhost
を使用しています。必要に応じてデータベース名を更新してください。次の DLL への参照を追加します。
Microsoft.Synchronization.dll
Microsoft.Synchronization.Data.dll
Microsoft.Synchronization.Data.SqlServer.dll
Microsoft.Synchronization.Data.SqlServerCe.dll と System.Data.SqlServerCe.dll