1

У меня есть приложение C#, скомпилированное в net 4.5.Создайте SQL Server Compact 3.5 из .net 4.5

Мне нужно создать файл базы данных SQL Server CE 3.5, потому что он будет использоваться на устройстве Windows CE 6.

При создании базы данных из кода с помощью

SqlCeEngine en = new SqlCeEngine(connectionString); 
en.CreateDatabase(); 

это версия 4 и не совместим с чистой компактный 3,5

Как я могу заставить SQL Server CE версии 3.5 на чистую 4.5?

+0

Вы можете попытаться определить версию в строке подключения. Возможно, вам нужно использовать «Provider = Microsoft.SQLSERVER.CE.OLEDB.3.5; Источник данных = myPath \ myData.sdf;» см. https://www.connectionstrings.com/sql-server-compact/ – josef

+0

Не используйте поставщика OLEDB из .NET ... – ErikEJ

ответ

-1

Моя рекомендация - вместо этого перейти на SQLite. Версия SQL Server Compact устарела или прекращена. Даже MS начала рекомендовать использовать SQLite для встроенной разработки в латентных средах: https://msdn.microsoft.com/en-us/library/ee486593.aspx

Базы данных SQLite совместимы с настольной/серверной стороной и мобильной стороной.

+0

Просто скажите «нет» вниз, без комментариев. – tcarvin

2

Вам необходимо указать версию 3.5.1.0 System.Data.SqlServerCe.dll из вашего проекта вместо версии 4.0.0.0.

Вы можете установить на рабочем столе выполнения 3,5 SP2 здесь: http://www.microsoft.com/en-us/download/details.aspx?id=5783

+0

@ErickEJ У меня такая же проблема, я установил версию 3.5 и хочу убедиться, что внес изменения в свой app.config из VcDeveloper

+0

Кроме того, я просто выполнил поиск в Nuget и нашел EntityFramework.SqlServerCompact.Legacy, поэтому я предполагаю, а не заменяю app.config, чтобы удалить версию 4.0 и установить ее правильно? – VcDeveloper