Frage

Wir haben vor kurzem umgezogen ein bestehendes App-Entwicklung Projekt Clickonce von Visual Studio 2005 auf VS 2010. Durch ein Upgrade Problem mit Visual Studio 2010, haben wir haben seine SQL CE-Datenbank von v3.1 auf v3.5 aktualisieren.

Um zu vermeiden, Datenmigration Kopfschmerzen, haben wir das Kopieren des vorherige Datenbank des Benutzers in die neuen Installationsordner jedes Mal, wenn ein Update Clickonce veröffentlicht wird. Wenn es irgendwelche DB Änderungen sind, Skript, das wir sie in die isFirstRun Event-Handler der App.

Aber jetzt, da wir die Datenbankversion und der entfalteten SQL CE DLL-Dateien geändert haben, bedeutet dies, dass alle unsere bestehenden Kunden mit der falschen Datenbank-Version werden am Ende.

Wir haben eine ziemlich große Anzahl von Benutzern, und wir mit Problemen konfrontiert, wenn wir alle bestehenden Benutzer ihre Daten exportieren, vollständig zu deinstallieren und dann die neue Version neu zu installieren.

FRAGE: Gibt es eine Möglichkeit, die vorhandene Datenbank in-Place-Upgrade programmatisch

?

Danke

Keine korrekte Lösung

Andere Tipps

Hier sind zwei Artikel, die Sie nützlich finden könnten. Die erste ist, wie die SQLCE DLL mit Ihrer Bereitstellung umfassen, anstatt sie als Voraussetzung bereitstellen; Dies gibt Ihnen die totale Kontrolle darüber, welche Version Sie ausgeführt werden.

http : //robindotnet.wordpress.com/2010/02/28/how-to-deploy-the-sqlserver-compact-edition-software-locally/

Der zweite Artikel ist über, wie Sie Ihre Daten sicher von Clickonce-Updates zu halten.

http://robindotnet.wordpress.com/2009/08/19/where-do-i-put-my-data-to-keep-it-safe-from-clickonce-updates/

Sicher, verwenden Sie das SqlCeEngine Upgrade API, auch unterstützt anstelle Upgrades: http://erikej.blogspot.com/2010/08/how-to-upgrade-version-3x-database-file.html

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top