Как сказать Entity Framework для поиска локального SQL Server CE или удаленного SQL Server взаимозаменяемо? - PullRequest
0 голосов
/ 15 декабря 2011

Хорошо, это план:

Я собираюсь написать связку *.sql и выполнить на моем SQL Server, создав все таблицы, индексы, ограничения и т. Д. Затем сгенерируйте модели сущностей, используяEntity Framework.

Затем я собираюсь написать утилиту синхронизации (Microsoft Sync Framework) для синхронизации SQL Server с SQL Server CE на стороне клиента.

Поскольку я не могу загрузить весь XXX ГБданных из SQL Server в SQL Server CE, я скачаю самые последние и скажу DAL (с Entity Framework) сначала автоматически извлечь локальный кэш SQL Server CE, а затем удаленный SQL Server.

Вопрос:
Мой план сработает?Как изменить соединение с базой данных во время выполнения?Должно быть куча SqlConnection, SqlCeConnection, SqlClient и SqlCeClient Я должен исправить.Но как и где?

Благодарим Вас за помощь.

РЕДАКТИРОВАТЬ : После опробования нескольких других маршрутов, кажется, то, что я планирую сделать, может быть автоматизированоШаблон локального кэша базы данных.Он запрашивает подключение к удаленному SQL-серверу, создает локальный SQL CE, настраивает базу данных для синхронизации, предоставляет параметры для создания сущностей.И после этого я могу просто создать POCO, используя Entity Framework 4.1 DbContext.

Кто-нибудь еще думает, что это то, как я должен идти?Тем не менее, я до сих пор не понимаю, как я могу переключаться между локальной и удаленной базой данных при запросах.

1 Ответ

1 голос
/ 15 декабря 2011

Чтобы иметь возможность использовать несколько строк подключения, вы должны изменить, изменить .SSDL вместе с connectionStrings. Вы можете найти полный образец с демонстрацией на http://mosesofegypt.net/post/Multiple-database-support-with-Entity-Framework.aspx.
Отказ от ответственности: не тестировали образец.

...