2009-02-20 4 views
3

Je travaille sur une fonctionnalité de partage qui comprend deux définitions de liste, deux parties WebPart, un ensemble de récepteurs de fonctions et un formulaire InfoPath.Mise en package de plusieurs fonctionnalités dans un seul fichier de solution WSP

Je dois utiliser WSPBuilder pour les empaqueter, et l'exigence est de conditionner toutes ces fonctionnalités dans un seul fichier de solution WSP. Maintenant, le constructeur WSP requiert les fichiers de déploiement dans une structure de dossiers particulière, identique au 12 Hive of sharepoint.

Mon problème est que toutes mes fonctions ont été développées séparément, et se composent de plusieurs fichiers de projet, et ceux-ci ne sont pas nécessairement dans la même structure de dossier ..

Comment puis-je utiliser WSP Builder pour emballer plusieurs fonctions dans un solution WSP unique?

Répondre

5

Aucune action particulière n'est requise dans wspbuilder pour disposer de plusieurs fonctionnalités dans le même package de solution. Tout ce que vous devez faire est de créer un nouveau dossier pour chaque fonctionnalité sous le dossier 12 \ TEMPLATE \ FEATURES dans votre solution dans Visual Studio et placer le fichier feature.xml approprié dans ce dossier. Par exemple, vous pouvez avoir:

12 \ TEMPLATE \ FEATURES \ FancyFeature \ feature.xml 12 \ FEATURES \ TEMPLATE \ ReallyCoolFeature \ feature.xml

... et ainsi de suite. Lors de la construction de la solution, wspbuilder lira toute la structure arborescente de votre dossier 12 et ajoutera les nœuds correspondants dans le fichier manifest.xml du wsp. Il en va de même pour tous les autres sous-dossiers possibles dans le dossier "TEMPLATE", y compris IMAGES, LAYOUTS, etc: au moment du déploiement, ils seront tous copiés dans le dossier correct dans la ruche 12 réelle, car le dossier être une réplique de l'original. Pour une meilleure compréhension, créez des dossiers et des fichiers dans votre dossier 12 dans la solution visual studio, compilez votre projet et regardez dans le fichier manifest.xml généré.

+0

Je pense que vous confondez Visual Studio Solution et Visual Studio Project. WSPBuilder n'a aucun moyen intégré de créer une solution WSP parmi plusieurs projets Visual Studio. – vitule

0

La réponse simple est que vous allez devoir copier tous les fichiers des différents projets dans un projet maître pour votre solution. Tant que tous vos fichiers de caractéristiques individuels sont dans l'emplacement correct dans votre dossier «12», vous serez prêt à partir.

Note: Vous devez vérifier toutes vos références à toutes les assemblées que cette solution va créer 1 assemblage pour tous vos logique personnalisée.

0

J'ai habituellement un projet dans la solution désignée comme un « principal ». Je définis les dépendances pour que ce projet "principal" soit construit en dernier. Ensuite, pour les autres projets que je veux inclure dans le paquet wsp, je modifie les "Post Build Events" pour xcopy le contenu du dossier 12 et les dll construites par les projets dans les dossiers correspondants pour le projet principal.Ensuite, après avoir construit la solution complète, je peux construire le paquet wsp pour le projet principal et savoir qu'il contient tout.

Questions connexes