1

C#4WinformsアプリでMicrosoftSyncFrameworkを使用して2つのSQLCompactEditionデータベースを相互に同期する必要がある状況がありますが、これを実現する方法を見つけるのに苦労しています。

SqlCeSyncProviderがサーバーデータベースに直接接続している2層タイプのシナリオでは、十分に簡単に機能しますが、WCFを介してそれを実現する方法がわかりません。

私がMicrosoftから見たサンプルは、基本的にWCFサービス内のSqlSyncProviderに委任していますが、SqlCeSyncProviderはServerSyncProviderProxyと同じメソッドを公開していないようです。

サービス内でSqlCeClientSyncProviderを使用することもできますが(この質問では、MSSyncFrameworkを使用して2つのSQLCEDbsを同期します)、SqlCeClientSyncProviderはGetSchemaメソッドまたはGetServerInfoメソッドを公開しません。これらの方法を安全​​に無視できるかどうかはわかりません。

人々はネットワークを介してSQLCeデータベースを公開し、SqlCeSyncProviderを使用しているだけですか、それともこれを機能させる何かが欠けていますか?

4

1 に答える 1

3

SqlCeClientSyncProvider/SyncAgent コンボは、Sql Ce を使用する独自の DbServerSyncProvider を作成する場合を除き、SqlCe データベース間の同期をサポートしません。

代わりに SqlCeSyncProvider を使用してください。

ここでサンプルを見つけることができます: Database Sync: SQL Server and SQL Compact N-Tier with WCF

両方のエンドポイントが Sql Ce になるように変更するだけです

于 2011-08-25T09:26:34.217 に答える