Présentation des projets et des solutions
Dans ce tutoriel, vous allez explorer ce qu’il signifie pour créer une solution et un projet dans Visual Studio. Une solution est un conteneur pour organiser un ou plusieurs projets de code connexes, comme un projet de bibliothèque de classes et un projet de test correspondant. Vous créez une référence d’un projet à un autre dans une solution. Ce tutoriel décrit également les propriétés d’un projet et certains des fichiers qu’il peut contenir.
En tant qu’exercice pour comprendre le concept d’un projet, vous créez une solution et un projet à partir de zéro. En règle générale, vous utiliseriez des modèles de projet Visual Studio pour créer de nouveaux projets.
Dans ce tutoriel, vous allez apprendre à :
- Ajouter un élément au projet
- Ajouter un deuxième projet
- Ajouter une référence de projet
- Ajouter du code de test
- Afficher les propriétés du projet
Conditions préalables
- Si vous n’avez pas Visual Studio 2019, rendez-vous sur la page des téléchargements de Visual Studio pour l’installer gratuitement.
- Si vous n'avez pas Visual Studio, allez sur Téléchargements de Visual Studio pour l'installer gratuitement.
Solutions et projets
Dans Visual Studio, une solution n’est pas une réponse . Une solution est simplement un conteneur que Visual Studio utilise pour organiser un ou plusieurs projets connexes. Lorsque vous ouvrez une solution, Visual Studio charge automatiquement tous les projets que la solution contient.
Remarque
Le développement d’applications dans Visual Studio ne nécessite pas de solutions et de projets. Vous pouvez simplement ouvrir un dossier qui contient du code et démarrer le codage, la génération et le débogage. Par exemple, un dépôt GitHub cloné peut ne pas contenir de projets et de solutions Visual Studio. Pour plus d’informations, consultez Développer du code dans Visual Studio sans projets ni solutions.
Créer une solution
Démarrez votre exploration en créant une solution vide. Après avoir appris à connaître Visual Studio, vous ne créerez probablement pas souvent de solutions vides. Lorsque vous créez un projet, Visual Studio crée automatiquement une solution pour le projet, sauf si une solution est déjà ouverte.
Ouvrez Visual Studio.
Dans la fenêtre de démarrage, sélectionnez Créer un projet.
Dans la page Créer un projet, saisissez solution vide dans la zone de recherche, sélectionnez le modèle Solution vide, puis Suivant.
Conseil
Si plusieurs environnements de travail sont installés, le modèle solution vierge peut ne pas apparaître en haut de votre liste de résultats de recherche. Essayez de faire défiler la liste jusqu’à la section Autres résultats en fonction de votre recherche. Il devrait apparaître là-bas.
Nommez la solution QuickSolution, puis sélectionnez Créer.
Une solution apparaît dans Explorateur de solutions sur le côté droit de la fenêtre Visual Studio. Vous utiliserez probablement Explorateur de solutions souvent, pour parcourir le contenu de vos projets.
Ouvrez Visual Studio, puis, dans la fenêtre de démarrage, sélectionnez Créer un projet.
Dans la page Créer un projet, tapez solution vide dans la zone de recherche, sélectionnez le modèle Solution vide, puis Suivant.
Conseil
Si plusieurs charges de travail sont installées, le modèle Solution Vide peut ne pas apparaître en haut de votre liste de résultats de recherche. Essayez de faire défiler l’écran jusqu’à Autres résultats en fonction de votre recherche pour trouver le modèle.
Dans la page Configurer votre nouveau projet, nommez la solution QuickSolution, puis sélectionnez Créer.
La solution QuickSolution s’affiche dans l'Explorateur de solutions à droite de la fenêtre Visual Studio. Vous utiliserez Explorateur de solutions souvent pour parcourir le contenu de vos projets.
Ajouter un projet
Ajoutez maintenant votre premier projet à la solution. Commencez par un projet vide et ajoutez les éléments dont vous avez besoin.
Dans l’Explorateur de solutions , cliquez avec le bouton droit sur la solution « QuickSolution » . Dans le menu contextuel, sélectionnez Ajouter>nouveau projet.
Une boîte de dialogue s’ouvre qui indique Ajouter un nouveau projet.
Dans la zone de recherche située tout en haut, saisissez le texte vide, puis sélectionnez C# sous Langage.
Sélectionnez le modèle Projet vide (.NET Framework), puis Suivant.
Nommez le projet QuickDate, puis sélectionnez Créer.
Un projet nommé QuickDate apparaît sous la solution dans Explorateur de solutions. Actuellement, il contient un fichier unique appelé App.config.
Remarque
Si vous ne voyez pas le modèle Projet vide (.NET Framework), installez la charge de travail Visual Studio de Développement .NET Desktop. Visual Studio utilise l’installation basée sur la charge de travail pour installer uniquement les composants dont vous avez besoin pour le type de développement que vous faites.
Un moyen simple pour installer une nouvelle charge de travail lorsque vous créez un projet consiste à sélectionner le lien Installer plus d’outils et de fonctionnalités sous le texte indiquant Ne trouvez-vous pas ce que vous recherchez ?. Une fois Visual Studio Installer lancé, sélectionnez la charge de travail Développement .NET Desktop, puis le bouton Modifier.
Dans l’Explorateur de Solutions, faites un clic droit sur la Solution « QuickSolution ». Dans le menu contextuel, sélectionnez Ajouter>nouveau projet.
Dans la page Ajouter un nouveau projet, tapez vide dans la zone de recherche en haut, puis sélectionnez C# sous Tous les langages.
Sélectionnez le modèle de projet vide (.NET Framework) C# , puis sélectionnez Prochain.
Note
Visual Studio utilise l’installation basée sur la charge de travail pour installer uniquement les composants dont vous avez besoin pour le type de développement que vous faites. Si vous ne voyez pas le modèle Projet Vide (.NET Framework), installez la charge de travail de développement pour bureau .NET dans Visual Studio.
Un moyen simple d'installer une nouvelle charge de travail lorsque vous créez un projet consiste à sélectionner le lien Installer d'autres outils et fonctionnalités sous le texte qui indique Ne trouvez-vous pas ce que vous recherchez ?. Dans Visual Studio Installer, sélectionnez la charge de travail Développement .NET Desktop, puis sélectionnez Modifier.
Dans la page Configurer votre nouveau projet, nommez le projet QuickDate, puis sélectionnez Créer.
Le projet QuickDate s’affiche sous la solution dans l’Explorateur de solutions. Le projet contient un nœud Références et un seul fichier nommé App.config.
Ajouter un élément au projet
Ajoutez un fichier de code à votre projet vide.
Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet QuickDate. Dans le menu contextuel, sélectionnez Ajouter>nouvel élément.
La boîte de dialogue Ajouter un nouvel élément s’ouvre. Sélectionnez Afficher tous les modèles si la boîte de dialogue s’ouvre en mode compact.
Développez Éléments Visual C#, puis sélectionnez Code. Dans le volet central, sélectionnez le modèle d’élément classe. Sous Nom, saisissez Calendrier, puis sélectionnez Ajouter.
Visual Studio ajoute un fichier nommé Calendar.cs au projet. Le
.cs
à la fin est l’extension de fichier pour les fichiers de code C#. Le fichier Calendar.cs s’affiche dans l’Explorateur de solutions hiérarchie de projet visuel, et le fichier s’ouvre dans l’éditeur.Remplacez le contenu du fichier Calendar.cs par le code suivant :
using System; namespace QuickDate { internal class Calendar { static void Main(string[] args) { DateTime now = GetCurrentDate(); Console.WriteLine($"Today's date is {now}"); Console.ReadLine(); } internal static DateTime GetCurrentDate() { return DateTime.Now.Date; } } }
Vous n’avez pas besoin de comprendre tout ce que fait le code. Exécutez l’application en appuyant sur Ctrl+F5. L'application imprime la date du jour sur la fenêtre de console ou de sortie standard. Fermez ensuite la fenêtre de console.
Ajouter un deuxième projet
Les solutions contiennent généralement plusieurs projets, et ces projets font souvent référence les uns aux autres. Certains projets d’une solution peuvent être des bibliothèques de classes, certains peuvent être des applications exécutables, et certains peuvent être des projets de test unitaire ou des sites web.
Pour ajouter un projet de test unitaire à votre solution, commencez à partir d’un modèle de projet afin que vous n’ayez pas à ajouter un autre fichier de code au projet.
Dans Solution Explorer, cliquez avec le bouton droit sur Solution « QuickSolution ». Dans le menu contextuel, sélectionnez Ajouter>nouveau projet.
Dans la boîte de dialogue Ajouter un nouveau projet, dans la zone de recherche située tout en haut, entrez le texte test unitaire, puis sélectionnez C# sous Langage.
Sélectionnez le modèle de projet Projet de test unitaire pour .NET Core, puis sélectionnez Suivant.
Note
À compter de Visual Studio 2019 version 16.9, le nom du modèle de projet MSTest est passé de projet de test unitaire MSTest (.NET Core) à projet de test unitaire. Plusieurs étapes de la création du projet ont changé dans cette mise à jour.
Nommez le projet QuickTest, puis sélectionnez Suivant.
Choisissez l’infrastructure cible recommandée (.NET Core 3.1) ou .NET 5, puis choisissez Créer.
Un deuxième projet est ajouté à Explorateur de solutions, et un fichier nommé UnitTest1.cs s’ouvre dans l’éditeur.
Dans l’Explorateur de Solutions, faites un clic droit sur la Solution « QuickSolution ». Dans le menu contextuel, sélectionnez Ajouter>nouveau projet.
Dans la boîte de dialogue Ajouter un nouveau projet, tapez test unitaire dans la zone de recherche en haut, puis sélectionnez C# sous Tous les langages.
Sélectionnez le modèle de projet de test unitaire C# (.NET Framework), puis sélectionnez Suivant.
Dans la page Configurer votre nouveau projet, nommez le projet QuickTest, puis sélectionnez Créer.
Visual Studio ajoute le projet QuickTest à Explorateur de solutions, et le fichier UnitTest1.cs s’ouvre dans l’éditeur.
Ajouter une référence de projet
Pour utiliser le nouveau projet de test unitaire pour tester votre méthode dans le projet QuickDate, vous devez ajouter une référence à QuickDate au projet QuickTest. L’ajout de la référence crée une dépendance de build entre les deux projets. Lorsque vous générez la solution, QuickDate est construit avant QuickTest.
Faites un clic droit sur le nœud Dépendances dans le projet QuickTest. Dans le menu contextuel, sélectionnez Ajouter une référence de projet.
La boîte de dialogue Gestionnaire de Références s’ouvre.
Dans le volet gauche, développez Projets et sélectionnez Solution. Dans le volet central, cochez la case en regard de QuickDate, puis sélectionnez OK.
Une référence au projet QuickDate est ajoutée.
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le nœud Références du projet QuickTest. Dans le menu contextuel, sélectionnez Ajouter une référence.
Dans la boîte de dialogue Gestionnaire de références, sélectionnez Projets. Dans le volet central, cochez la case en regard de QuickDate, puis sélectionnez OK.
Une référence au projet QuickDate apparaît sous le projet QuickTest dans l’Explorateur de solutions .
Ajouter du code de test
Ajoutez maintenant du code de test au fichier de code de test C#. Remplacez le contenu de UnitTest1.cs par le code suivant :
using System; using Microsoft.VisualStudio.TestTools.UnitTesting; namespace QuickTest { [TestClass] public class UnitTest1 { [TestMethod] public void TestGetCurrentDate() { Assert.AreEqual(DateTime.Now.Date, QuickDate.Calendar.GetCurrentDate()); } } }
Une ligne ondulée rouge apparaît sous une partie du code. Vous pouvez résoudre cette erreur en définissant le projet de test en tant que assembly friend du projet QuickDate.
Dans le fichier Calendar.cs, ajoutez l’instruction using et l’attribut InternalsVisibleToAttribute suivants en haut du fichier pour résoudre l’erreur dans le projet de test.
using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("QuickTest")]
Le code Calendar.cs doit ressembler à cette capture d’écran :
Exécuter le test unitaire
Pour vérifier que votre test unitaire fonctionne, dans la barre de menus, choisissez Test>Exécuter tous les tests. La fenêtre de l’Explorateur de tests s’ouvre et vous devez voir que le test TestGetCurrentDate est réussi.
Conseil
Vous pouvez également ouvrir Explorateur de tests en choisissant >Explorateur de tests à partir de la barre de menus.
Propriétés du projet
La ligne du fichier Calendar.cs qui contient l’attribut InternalsVisibleToAttribute fait référence au nom de l’assembly ou au nom de fichier du projet QuickTest. Le nom de l’assembly peut ne pas toujours être identique au nom du projet. Pour rechercher le nom d’assembly d’un projet, utilisez les propriétés du projet. Les pages de propriétés contiennent différents paramètres pour le projet.
Dans Explorateur de solutions, cliquez avec le bouton droit sur le projet QuickTest et sélectionnez Propriétés, ou sélectionnez le projet, puis appuyez sur Alt+Entrée.
Les pages de propriétés pour le projet s’ouvrent sous l’onglet application. Le nom de l’assembly du projet QuickTest est en effet QuickTest.
Si vous le souhaitez, vous pouvez modifier le nom ici. Lorsque vous générez le projet de test, le nom du fichier binaire résultant passe de QuickTest.dll à <NewName>.dll.
Explorez d’autres onglets des pages de propriétés du projet, par exemple Générer et Déboguer. Ces onglets sont différents pour différents types de projets.