Как синхронизировать две базы данных Sql Compact edition через WCF (n-уровень) - PullRequest
1 голос
/ 25 августа 2011

У меня есть ситуация, когда требуется синхронизация двух баз данных SQL Compact Edition с использованием Microsoft Sync Framework в приложении C # 4 Winforms, но я изо всех сил пытаюсь найти способ, чтобы это произошло.

У меня достаточно легко работает в двухуровневом сценарии с SqlCeSyncProvider, подключающимся напрямую к базе данных сервера, но я не уверен, как добиться этого через WCF.

Примеры, которые я видел от Microsoft, в основном делегируются SqlSyncProvider внутри службы WCF, но SqlCeSyncProvider, по-видимому, не предоставляет те же методы, что и ServerSyncProviderProxy.

Я мог бы использовать SqlCeClientSyncProvider внутри службы (о чем говорится в этом вопросе: Использование MS Sync Framework для синхронизации двух SQL CE Dbs ), но SqlCeClientSyncProvider не предоставляет методы GetSchema или GetServerInfo. Я не знаю, могу ли я смело игнорировать эти методы или нет.

Люди просто выставляют базы данных SQLCe по сети и используют SqlCeSyncProvider, или мне не хватает чего-то, что делает эту работу?

1 Ответ

3 голосов
/ 25 августа 2011

Комбинация SqlCeClientSyncProvider / SyncAgent не поддерживает синхронизацию между базами данных SqlCe, если только вы не хотите написать свой собственный DbServerSyncProvider, использующий Sql Ce.

используйте взамен SqlCeSyncProvider.

Вы можете найти образец здесь: Синхронизация базы данных: SQL Server и SQL Compact N-Tier с WCF

просто измените его так, чтобы обе конечные точки были Sql Ce

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...