2010-12-02 26 views
1

Nous avons récemment déplacé un projet de développement d'application Clickonce existant de Visual Studio 2005 vers VS 2010. En raison d'un problème de mise à niveau avec Visual Studio 2010, nous avons dû mettre à niveau sa base de données SQL CE .1 à v3.5.Mise à niveau de SQL CE via la mise à jour Clickonce

Pour éviter les problèmes de migration de données, nous avons copié la base de données précédente de l'utilisateur dans son nouveau dossier d'installation chaque fois qu'une mise à jour Clickonce est publiée. S'il y a des changements de DB, nous les scriptons dans le gestionnaire d'événements IsFirstRun de l'application. Mais maintenant, depuis que nous avons changé la version de la base de données et les fichiers .dll SQL CE déployés, cela signifie que tous nos clients existants se retrouveront avec la mauvaise version de la base de données.

Nous avons une base d'utilisateurs assez importante, et nous rencontrons des problèmes si nous demandons à tous les utilisateurs existants d'exporter leurs données, désinstaller complètement, puis réinstaller la nouvelle version.

QUESTION: Existe-t-il un moyen de mettre à niveau la base de données existante sur place par programmation?

MERCI

Répondre

1

Voici deux articles que vous pourriez trouver utiles. Le premier consiste à inclure la DLL SQLCE avec votre déploiement plutôt que de le déployer comme pré-requis; Cela vous donne un contrôle total sur la version que vous utilisez.

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

Le deuxième article est sur la façon de garder vos données à l'abri des mises à jour ClickOnce.

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