Иногда подключаемое приложение - проблема SQL Compact+EntityFramework+SyncFramework

В настоящее время я изучаю различные возможности для нового приложения, которое попадает в категорию "иногда подключен". После некоторых исследований я "решил" пойти на центральный SQLServer и клиентов с базой данных SqlCompact, которые будут синхронизироваться, когда это необходимо / возможно.

При "соединении" всего вместе я получал следующее исключение.

[A]System.Data.SqlServerCe.SqlCeConnection cannot be cast to 
[B]System.Data.SqlServerCe.SqlCeConnection. 
Type A originates from 'System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' in the context 'Default' 
at location 'C:\Windows\assembly\GAC_MSIL\System.Data.SqlServerCe\4.0.0.0__89845dcd8080cc91\System.Data.SqlServerCe.dll'. 
Type B originates from 'System.Data.SqlServerCe, Version=3.5.1.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' in the context 'Default' 
at location 'C:\Windows\assembly\GAC_MSIL\System.Data.SqlServerCe\3.5.1.0__89845dcd8080cc91\System.Data.SqlServerCe.dll'.

Дальнейшее чтение помогло мне понять, что Sync Framework не поддерживает SqlServerCe v4.0, что делает его несовместимым с EntityFramework.

Теперь я задаюсь вопросом, правильная ли дорога, по которой я собираюсь идти. Любые альтернативные решения или обходной путь будут оценены.

Некоторые дополнительные сведения, которые могут иметь отношение к теме:

  • Количество клиентов ~100
  • Количество клиентов, которым будет разрешено выполнять синхронизацию в обоих направлениях (обновление центрального сервера) ~10
  • База данных довольно маленькая (20 МБ) с небольшим ожидаемым ростом.

1 ответ

Решение

Вы можете заставить его работать с SQL CE 4, хотя он и не поддерживается.

см.: СИНХРОННАЯ РАМКА И SQL COMPACT 4 (ДА, ВЫ МОЖЕТЕ!)

Другие вопросы по тегам