0

私は、SQL サーバー データベースと SQL CE クライアント データベースに基づく OCA アプリケーションを使用しています。各ユーザーには、SQL サーバーの db に独自のテーブルがあります。各ユーザーのテーブルには同じスキーマがありますが、異なるデータを持つことができます。SQL サーバー DB テーブル名 (userID + "__usersdatatable" として設定) に基づいてクライアント アプリケーションで synctable 名を動的に設定したいと考えています。

何も変更しない場合、同期サービスは問題なく実行されます。私の最新のアイデアは、SyncTable.TableName = "jsmith_usersdatatable"; を変更することでした。oninitialized() メソッドの LocalDataCache1SyncAgent.cs で。ただし、次のエラーが表示されます。

「テーブル 'zlentz_GOBOS' のスキーマを DbServerSyncProvider の GetSchema() メソッドで取得できなかったため、クライアント データベースを初期化できません。クライアント データベースへの接続を確立できること、および SelectIncrementalInsertsCommand プロパティまたは SelectIncrementalUpdatesCommand プロパティのいずれかが確立されていることを確認してください。 SyncAdapter のプロパティが正しく指定されています。」

要するに、各 OCA は異なるテーブルに同期する必要があるということです (双方向)。私は明らかに SQL または同期サービスの専門家ではないので、アドバイスが役に立ちます。:) ありがとうございます!

4

1 に答える 1

0

Sync Frameworkについて詳しく学んだ後、ウィザードの外部で作業する必要があることが明らかになりました。

将来の視聴者にとって、次のリンクは非常に役に立ちました。

http://www.codeproject.com/Articles/18027/Take-Data-Offline-Using-Microsoft-Synchronization

于 2012-05-17T03:58:37.003 に答える