web-dev-qa-db-fra.com

Visual Studio 2010: comment appliquer l'ordre de génération des projets dans une solution?

Cela ne me posait aucun problème dans Visual Studio 2008, mais il semble que VS 2010 ait un problème et je parie que c'est probablement moi.

J'ai une solution avec un projet de site Web ASP.NET et quelques projets C # (BLL, DAL, Tests in NUnit). J'ai configuré le processus de construction du projet de test pour qu'il exécute automatiquement NUnit pour exécuter les tests. Je voudrais m'assurer que les projets BLL et DAL se construisent avant le projet de test pour que les tests fonctionnent avec la dernière version compilée (oui, je sais que je pourrais faire tout cela dans un projet, mais je choisis de ne pas - s'il vous plaît supporter avec moi :))

Donc, j'ai défini les dépendances du projet Test pour inclure les projets BLL, DAL et Application Web, et l'ordre de construction affiche BLL, DAL, Application Web, puis Tests. Cependant, j'ai remarqué que la BLL ne se construisait pas réellement lorsque je construisais le projet Test.

Une idée de ce que cela pourrait être ou une option qui me manque pour forcer la construction des autres projets lorsque je construis le projet Test?

Merci d'avance pour votre aide!

67
SeanKilleen

Nick Craver a mentionné avoir vérifié dans le gestionnaire de configuration pour vous assurer que le projet sélectionné était construit pour une configuration donnée. 

Toutefois, pour définir l'ordre de construction de plusieurs projets dans une solution, cliquez dessus avec le bouton droit de la souris et choisissez "Projeter l'ordre de construction ..." dans le menu contextuel.

114
M. Travis Volker

Je vais expliquer un peu mon commentaire ici, pour ceux qui ont un problème similaire. 

Ouvrez le gestionnaire de configuration en cliquant avec le bouton droit de la souris sur la solution et en choisissant Configuration Manager , puis assurez-vous que le projet approprié (pour votre configuration actuelle) est coché dans la colonne de droite, ici:

Configuration Manager

20
Nick Craver

Peut-être qu'au lieu de définir l'ordre manuellement, vous pourriez utiliser Dépendances du projet qui vous permet de spécifier l'ordre de construction indirectement.

  1. Dans l'Explorateur de solutions, sélectionnez un projet.
  2. Dans le menu Projet, choisissez Dépendances du projet. La boîte de dialogue Dépendances du projet s'ouvre . L'option Dépendances du projet est uniquement disponible dans une solution comportant plusieurs projets.
  3. Sous l'onglet Dépendances, sélectionnez un projet dans le menu déroulant Projet.
  4. Dans le champ Dépend de, cochez la case de tout autre projet devant être créé avant ce projet.
15
Vyktor

Pour corriger le problème qui se produit dans mon VS2012, j'ai procédé comme suit:

Cliquez avec le bouton droit sur Propriétés du projet -> Propriétés communes -> Framework et références.

Vous trouverez maintenant certains projets affichés dans l'onglet Dépendance dans la liste "Références".

Cliquez sur "Ajouter une nouvelle référence" pour ajouter les projets manquants. 

0
John