2010-07-08 19 views
3

J'ai terminé un projet d'étudiant, ce projet extraire des données à partir de fichiers XML sur Internet et enregistrer dans la base de données et l'affiche. Et j'utilise ces données de différentes manières, par ex. afficher sur la page principale, dans un autre onglet sous forme de tableau et créer des graphiques. J'ai fait tout cela en faisant 5 classes différentes. Chaque classe extrait différents types de XML et les enregistre dans la base de données avec une seule fonction Load(). La dernière condition du projet est de rendre l'application mise à jour/corrigible (l'utilisateur n'a pas besoin de télécharger la nouvelle version complète pour mettre à jour l'application, mais un petit programme d'installation ajoutera une fonctionnalité à l'application). Comment je fais ça? Mon professeur dit que l'ajout de polymorphisme aidera, un ami dit que créer différents modules d'application (le diviser en parties) de sorte que chaque classe aura sa propre DLL.Comment faire une application Patch-able/Update-able?

Que dois-je faire pour le rendre correctif? Comment créer une DLL de classes? comment casser l'application en pièces? Ou tout cela est inutile, je devrais juste utiliser un logiciel de patch qui crée un patch en comparant les deux builds ??

Répondre

1

Qu'est-ce que vous voulez faire est de suivre les étapes ci-dessous:

  1. Créer de nouveaux projets de classe dans votre solution, 1 pour chacune des classes que vous avez.
  2. Ajoutez une référence à votre projet principal, 1 pour chaque nouveau projet que vous avez créé.
  3. À ce stade, tout devrait se compiler et, comme l'a dit Henk, si vous ne changez pas la partie publique des assemblages, tout devrait bien se passer.

Si vous voulez aller encore plus loin, créez une nouvelle interface et demandez à l'interface d'implémenter les méthodes dans vos classes. Avez-vous toutes vos classes implémenter cette interface. Tant que l'interface ne change pas, vous pouvez modifier tout ce que vous voulez sur les assemblages et les classes (tant que vos classes continuent à implémenter l'interface)

+0

"Ajouter une référence à votre projet principal, 1 pour chaque nouveau projet créé." mais Henk Holterman ci-dessous a déclaré que "sélectionnez le projet original et utilisez Ajouter une référence pour ajouter l'ASM" – SMUsamaShah

+0

Quoi qu'il en soit, merci. J'ai une idée sur la façon d'ajouter une DLL. Comme je l'ai dit, j'ai hérité toute ma classe d'une classe qui contient des fonctions d'extraction de données (extraire le innerText d'un noeud et le convertir en type requis). Cette approche est-elle correcte? Si c'est comment puis-je hériter tous les projets dll de cette classe? désolé si j'ai demandé quelque chose de stupide – SMUsamaShah

+0

Maintenant, j'ai fait une DLL. Comment faire un patch de mise à jour pour cela? Les gens parlent de ClickOnce mais il met à jour l'application. Alors que j'ai besoin de créer un correctif d'installation qui mettra à jour la bibliothèque ou d'autres fichiers de mon application? – SMUsamaShah