Exercice :exécuter votre application web localement
Dans cet exercice, vous allez :
- Exécuter votre application web localement et l’afficher dans un navigateur.
- Passer en revue la façon dont l’application web est servie.
Exécuter l’application web et l’afficher dans un navigateur
Exécuter l’application web dans Visual Studio Code et l’afficher dans un navigateur :
Dans Visual Studio Code, appuyez sur F5 pour exécuter l’application.
Visual Studio Code :
- Déclenche la commande CLI .NET
dotnet runqui génère et exécute l’application. - Attache le débogueur à l’application en cours d’exécution.
La première fois que le projet est exécuté dans Visual Studio Code, l’invite Sélectionner le débogueur s’affiche.
- Déclenche la commande CLI .NET
À l’invite Sélectionner un débogueur dans la palette de commandes en haut de l’interface utilisateur de Visual Studio Code, sélectionnez C#. À l’invite suivante, sélectionnez la configuration de lancement par défaut (
C#: MyWebApp [Default Configuration]) :
Le navigateur par défaut est lancé sur
http://localhost:{PORT}, qui affiche la réponse de l’application. L’espace réservé{PORT}est le port aléatoire attribué à l’application lors de la création de son projet. Si vous devez modifier le port en raison d’un conflit de port local, modifiez le port dans le fichier Propriétés/launchSettings.json du projet.Réponse affichée dans le navigateur :
Fermez la fenêtre du navigateur.
Dans Visual Studio, soit :
- Dans le menu Exécuter , sélectionnez Arrêter le débogage.
- Appuyez sur Maj+F5 sur le clavier.
Exécutez l’application web en utilisant l’interface CLI .NET :
À partir d’un terminal ou de la ligne de commande, accédez au répertoire du projet MyWebApp qui contient votre fichier MyWebApp.csproj .
Générez et exécutez l’application avec la commande suivante :
dotnet runLe projet est généré, exécuté et affiche la sortie suivante sur la ligne de commande :
C:\MyWebApp> dotnet run Building... info: Microsoft.Hosting.Lifetime[14] Now listening on: http://localhost:5267 info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down.Étant donné que le numéro de port dans l’URL fournie est défini de façon aléatoire lors de la création du projet, votre point de terminaison peut avoir un autre numéro de port.
Ouvrez un navigateur sur l’URL générée dans votre propre sortie de ligne de commande. La réponse
Hello World!de l’application s’affiche :
Pour arrêter l’application, appuyez sur Ctrl+C sur la ligne de commande.
Comment l’application web est servie
Lorsque l’application est générée et exécutée, les étapes suivantes se déroulent :
Génération et configuration :
- MSBuild est appelé pour restaurer les dépendances et compiler le projet. MSBuild traite le fichier projet MyWebApp.csproj et compile le code source dans un assembly.
- L’application lit les paramètres de configuration, y compris les paramètres spécifiés dans launchSettings.json pour le profil de lancement par défaut (le premier listé).
Configuration de l’hôte :
- La
WebApplication.CreateBuilderméthode dans Program.cs configure l’hôte web. Par défaut, cette méthode configure Kestrel comme serveur web. Kestrel est un serveur web multiplateforme pour ASP.NET Core conçu pour des performances élevées. - Kestrel commence à écouter les requêtes HTTP entrantes sur les URL configurées, y compris HTTPS si spécifié.
Traitement de la requête :
- Lorsqu’une requête est reçue, Kestrel la transfère au pipeline d’intergiciels ASP.NET Core.
- Le pipeline d’intergiciels traite la requête via une série de composants intergiciels, qui peuvent gérer des tâches telles que l’authentification, la journalisation et le routage.
- Si la requête correspond à un itinéraire défini, le point de terminaison correspondant est exécuté. Dans ce cas, le point de terminaison
app.MapGet("/", () => "Hello World!")gère les requêtes à l’URL racine et retourne la chaîneHello World!.
Réponse :
- La réponse, qui, dans ce cas, est la chaîne « Hello World ! », est renvoyée via le pipeline d’intergiciels à Kestrel, qui la renvoie ensuite au client.