@ Джазимов, вы правы, но я ответил на этот вопрос 3 года назад до вашего комментария, а в 2013 году это был вполне нормальный подход.

ужно обновить базу данных SqlCE3.5 до 4.0.

Я получаю следующее сообщение об ошибке, когда пытаюсь получить доступ к своей базе данных 3.5 sdf / database, используя новое соединение CE4.0: -

System.Data.EntityException: основной поставщик не удалось открыть. ---> System.Data.SqlServerCe.SqlCeInvalidDatabaseFormatException: файл базы данных был создан в более ранней версии SQL Server Compact.Пожалуйста, обновите, используя метод SqlCeEngine.Upgrade ().

Кто-нибудь знает, как я могу это сделать? Очевидно, что мне нужно сделать это программно, но я не уверен, что мне следует делать / какие ссылки мне нужно добавить и т. Д.

Ура!

 Pure.Krome21 янв. 2011 г., 01:28
где я могу найти SqlCE 4.0 dll, на который мне нужно ссылаться? (он не указан в ссылках .NET). Могу ли я NuGet это?
 leppie20 янв. 2011 г., 08:50
Разве это не очевидно? ВызовSqlCeEngine.Upgrade()! Или есть проблема? Также обратите внимание на несовместимость между различными версиями.
 Pure.Krome20 янв. 2011 г., 11:02
Подсказка: пожалуйста, приведите несколько примеров кода. Когда я попробовал какой-то код, он не смог скомпилироваться.
 ErikEJ20 янв. 2011 г., 13:06
Смотрите мой блог здесь для примера кода:erikej.blogspot.com/2010/08/...
 Tom W06 апр. 2012 г., 19:10
@leppie: я) Где? В каком контексте? С какими аргументами? II) SqlCeEngine не содержит метод с именем Upgrade (). Сообщение бесполезно.

Ответы на вопрос(2)

Решение Вопроса

System.Data.SqlServerCe.SqlCeEngine.Upgrade, ВидетьMSDN, который содержит пример кода.

Файл базы данных был создан в более ранней версии SQL Server Compact. Пожалуйста, обновите, используя метод SqlCeEngine.Upgrade ().

Просто:

Щелкните правой кнопкой мыши свой проект в обозревателе решений.Выберите свойства, перейдите на вкладку СсылкиВы увидите ссылку под названием:System. Data.SqlServerCe Type/net version/4.0 - удалить этот элемент (выберите элемент, а затем нажмите «Удалить» в нижней части этого окна).Нажмите кнопку «Добавить ...» слева от кнопки «Удалить»На вкладке .NET найдитеSystem.Data.SqlServerCe 3.5 и добавь это.Скомпилируйте свой проект!

Я думаю, что это будет работать.

 zviad28 дек. 2017 г., 16:53
@ Джазимов, вы правы, но я ответил на этот вопрос 3 года назад до вашего комментария, а в 2013 году это был вполне нормальный подход.
 Brij20 февр. 2014 г., 06:08
Да, нет необходимости обновлять, если вам не нужно. Если вы не найдете System.Data.SqlServerCe на вкладке .NET, добавьте ссылку из C: \ Program Files \ Microsoft SQL Server Compact Edition \ v3.5 \ Desktop
 Jazimov25 авг. 2016 г., 15:17
Этот совет довольно самонадеян: многие люди, начинающие с Visual Studio 2015, вряд ли будут иметь версию SqlServerCe v3.5 на своем компьютере. Если вы собираетесь предложить добавить ссылку на v3.5, есть ли у людей идеи, как получить эту версию, если у них ее нет в их системе?

Ваш ответ на вопрос