Обновление SQL CE Via ClickOnce Обновление
-
30-09-2019 - |
Вопрос
Недавно мы перевели существующую проект разработки приложений ClickOnce из Visual Studio 2005 до VS 2010. Из-за проблемой обновления с Visual Studio 2010 мы должны были обновить свою базу данных SQL CE от V3.1 до V3.5.
Чтобы избежать миграции данных головных болей, мы копируем предыдущую базу данных пользователя в свою новую папку установки каждый раз, когда обновление ClickOnce опубликовано. Если есть какие-либо изменения БД, мы сценарием их в обработчик события ISFIRSTERUN APP.
Но сейчас, поскольку мы изменили версию базы данных и развернутые файлы SQL CE .dll, это означает, что все наши существующие клиенты будут в конечном итоге с неправильной версией базы данных.
У нас довольно большая пользовательская база, и мы сталкиваемся с проблемами, если нам потребуются все существующие пользователи, чтобы экспортировать свои данные, полностью удалять, затем переустановить новую версию.
Вопрос: Есть ли способ программично обновить существующую базу данных на месте?
СПАСИБО
Нет правильного решения
Другие советы
Вот две статьи, которые вы можете найти полезными. Первый - это, как включить SQLCE DLL с вашим развертыванием, а не развертывать его как предпосылку; Это дает вам полный контроль над той версией, которую вы работаете.
Вторая статья состоит в том, как сохранить ваши данные от обновлений ClickOnce.
Конечно, используйте API обновления SQLCEENGINE, даже поддерживает на месте обновления: http://erkej.blogspot.com/2010/08/how-to-upgrade-version-3x-database-file.html.