次のコードを使用しても、WindowsXP32ビット/SQLServer Express 2008(x86)で復元されたデータベースで、データベースのSyncFramework2.1要素のレプリカキーマップとscope_infoテーブルのscope_id値が変更されないという問題が発生しました。 )。Windows764ビット/SQLServer Express 2008(x86)である他のクライアントでは機能します:
SqlSyncStoreRestore databaseRestore = new SqlSyncStoreRestore(clientConn); databaseRestore.PerformPostRestoreFixup();
サブ質問1:動作しませんが、例外もスローされないため、トラブルシューティングが非常に困難になります。これは、x64コンピューター(Visual Studio x86を使用)で構築した小さなコンソールアプリケーション(ターゲットx86)から実行されます。32/64ビットのものが原因ではないかと思います。どんな手掛かり??しかし、それで、これは私に不思議に思いました:
サブ質問2:「SyncFrameworkのC#のPerformPostRestoreFixup()を使用するのと同等のSQLクエリはありますか?」
私はSyncFrameworkにかなり慣れていませんが、MicrosoftSQLServerデータベースの同期の全体像をまだ完全には理解していません。SyncOrchestrator/SqlSyncProviderコンボが組み込みのSQL変更追跡機能を使用していないことに気づきました。私には信じられないほど驚きました!それは今、私をさらに苦痛な質問に悩まさせました:
サブ質問3:組み込みのSQL Server変更追跡と同期フレームワークは、同期スキームを構築するための2つの完全に独立したプラットフォームですか?私は英語で正しい単語を使用していることを望みます。言い換えれば、彼らのそれぞれは完全にお互いに気づいていませんか?
よろしくお願いします!私はすっごく失われたLOLです!
敬具、
Zyxy