ASP .NET MVC 5 Document de Rick Anderson Mise en route Visual Studio est un env

ASP .NET MVC 5 Document de Rick Anderson Mise en route Visual Studio est un environnement de développement intégré ou IDE. Dans Visual Studio, il y a une barre d'outils dans la partie supérieure montrant les différentes options disponibles à vous. Il y a aussi un menu qui fournit un autre moyen d'effectuer des tâches dans l'environnement IDE. (Par exemple, au lieu de sélectionner le Nouveau projet de la page de démarrage, vous pouvez utiliser le menu et sélectionnez Fichier > Nouveau > projet.) Créer votre première Application Cliquez sur Nouveau projet, puis sélectionnez Visual Basic sur la gauche, puis le Web et puis sélectionnez Application Web ASP.NET. Nommez votre projet « MvcMovie » et puis cliquez sur OK. Dans la boite de dialogue Nouveau projet ASP.NET, cliquez sur MVC et puis cliquez sur OK. Visual Studio utilise un modèle par défaut pour le projet ASP.NET MVC, que vous venez de créer. Vous avez une application qui travaille dès maintenant sans rien faire ! Il s'agit d'un simple projet de « Hello World! ». Cliquez sur F5 pour démarrer le débogage. F5 oblige Visual Studio à lancer IIS Express et exécutez votre application web Visual Studio puis lance un navigateur et ouvre la page d'accueil de l'application. Remarquez que la barre d'adresse du navigateur affiche localhost:port# . Lorsque Visual Studio exécute un projet web, un port aléatoire est utilisé pour le serveur web. Dans l'image ci-dessous, le numéro de port est 55532. Lorsque vous exécutez l'application, vous verrez un autre numéro de port. Dès la sortie de la boite de ce modèle par défaut vous donne des pages Accueil, Contact et environ. L'image ci-dessus n'affiche pas les liens Accueil, propos et Contact. Selon la taille de la fenêtre de votre navigateur, vous devrez peut-être cliquer sur l'icône de navigation pour voir ces liens. L'application assure également pour vous inscrire et vous connecter. L'étape suivante consiste à modifier le fonctionne de cette application et en savoir un peu plus sur ASP.NET MVC. Fermez l'application ASP.NET MVC et nous allons changer du code. Ajout d'un contrôleur MVC est synonyme de modèle-vue-contrôleur. MVC est un pattern pour développer des applications qui sont bien architecturé, testables et facile à entretenir. Contiennent des applications basées sur le MVC : • Modélisation : Classes qui représentent les données de l'application et qui utilisent une logique de validation pour faire respecter les règles de métier pour que les données. • Views : fichiers de modèle que votre application utilise pour générer dynamiquement les réponses HTML. • Controllers : Classes qui gèrent les demandes entrantes de navigateur, récupérer des données de modèle et ensuite spécifier des modèles de vue qui retournent une réponse au navigateur. Nous couvrant tous ces concepts et vous montrer comment s'en servir pour construire une application. Nous allons commencer par créer une classe de contrôleur. Dans de L'Explorateur de solutions, faites un clic droit le dossier controllers, puis cliquez sur Ajouter, puis Contrôleur. Dans la boite de dialogue Ajouter un modèle automatique, cliquez sur Contrôleur MVC 5 – Vide et puis cliquez sur Ajouter. Nommez votre nouveau contrôleur « HelloWorldController », puis cliquez sur Ajouter. Notez que dans L'Explorateur qu'un nouveau fichier a été créé nommé HelloWorldController.vb et un nouveau dossier Views\HelloWorld. Le contrôleur est ouvert dans l'IDE. Remplacez le contenu du fichier avec le code suivant. Imports System.Web.Mvc Public Class HelloWorldController Inherits Controller ' GET: /HelloWorld Function Index() As String Return "This is my <b>default</b> action..." End Function 'GET: /HelloWorld/Welcome/ Function Welcome() As String Return "This is the Welcome action method..." End Function End Class Les méthodes du contrôleur retourneront des chaines HTML à titre d'exemple. Le contrôleur est appelé HelloWorldController et la première méthode est nommée Index. Nous allons appeler à partir d'un navigateur. Exécutez l'application (en appuyant sur F5 ou Ctrl + F5). Dans le navigateur, ajoutez « HelloWorld » le chemin d'accès dans la barre d'adresse. (Par exemple, dans l'illustration ci- dessous, c'est http://localhost:55532/HelloWorld.) La page dans le navigateur va ressembler à la capture d'écran suivante. Dans la méthode ci-dessus, le code renvoyé une chaine directement. ASP.NET MVC appelle classes contrôleur différent (et les méthodes d'action différents en leur sein) selon l'URL entrante. La logique de routage d’URL par défaut utilisée par ASP.NET MVC utilise un format comme celui-ci pour déterminer quel code pour appeler : /[Controller]/[ActionName]/[Parameters] Vous définissez le format de routage dans le fichier App_Start/RouteConfig.vb. Public Module RouteConfig Public Sub RegisterRoutes(ByVal routes As RouteCollection) routes.IgnoreRoute("{resource}.axd/{*pathInfo}") routes.MapRoute( name := "Default", url := "{controller}/{action}/{id}", defaults := New With {.controller = "Home", .action = "Index", .id = UrlParameter.Optional} ) End Sub End Module Le slash (/) est un séparateur de segment. Lorsque vous exécutez l'application et ne fournissez pas des segments d'URL, il utilise par défaut le contrôleur « Home » et la méthode d'action « Index » spécifié dans la section valeurs par défaut du code ci-dessus. La première partie de l'URL détermine la classe du contrôleur à exécuter. Si /HelloWorld est mappé à la classe HelloWorldController. La deuxième partie de l'URL détermine la méthode d'action de la classe à exécuter. Ainsi, /HelloWorld/Index évoquera l’exécution de la méthode Index de la classe HelloWorldController. Notez que /HelloWorld nous renvoie à la même page et le méthode Index a été utilisée par défaut. C'est parce qu'une méthode nommée Index est la méthode par défaut qui sera appelée sur un contrôleur si on n'est pas spécifiée une explicitement. La troisième partie du segment URL (Parameters) est pour acheminer les données. Accédez à http://localhost:xxxx/HelloWorld/Welcome. Le méthode Welcome s'exécute et retourne la chaine " This is the Welcome action method... ". Le mappage de MVC par défaut est /[Controller]/[ActionName]/[Parameters]. Pour cette URL, le contrôleur est HelloWorld et Welcome est la méthode d'action. Vous n'avez pas utilisé la partie [Parameters] de l'URL. Nous allons modifier l'exemple un peu afin que vous pouvez passer des informations de paramètre de l'URL au contrôleur (par exemple, /HelloWorld/Welcome?name=Scott&numtimes=4). Changer votre méthode Welcome pour inclure deux paramètres comme indiqué ci-dessous. Notez que le code utilise la fonctionnalité de paramètre optionnel vb pour indiquer que le paramètre numTimes a une valeur par défaut égale à 1, si aucune valeur n'est passée pour ce paramètre. Function Welcome(name As String, Optional numTimes As Integer = 1) As String Return HttpUtility.HtmlEncode("Hello " & name & ", NumTimes is: " & numTimes) End Function Remarque sur la sécurité : Le code ci-dessus utilise HttpServerUtility.HtmlEncode pour protéger l'application des entrées malveillantes (à savoir le JavaScript). Lancez votre application et accédez à l'URL de l'exemple (http://localhost:xxxx/HelloWorld/Welcome?name=Scott&numtimes=4). Vous pouvez essayer différentes valeurs pour name et numtimes dans l'URL. Le système de liaison pour le modèle MVC ASP.NET mappe automatiquement les paramètres nommés de la chaine de requête dans la barre d'adresse aux paramètres dans votre méthode. Dans l'exemple ci-dessus, le segment d'URL (Parameters) n'est pas utilisé, les paramètres name et numTimes sont transmis sous forme de chaines de requête. Le ? (point d'interrogation) dans l'URL ci-dessus est un séparateur, et suivent les chaines de requête. Le caractère & sépare les chaines de requête. Remplacez la méthode Welcome avec le code suivant : Function Welcome(name As String, Optional ID As Integer = 1) As String Return HttpUtility.HtmlEncode("Hello " & name & ", ID: " & ID) End Function Exécutez l'application et entrez l'URL suivante : http://localhost:xxx/HelloWorld/Welcome/3?name=Rick Cette fois le troisième segment de l'URL correspondant du paramètre itinéraire ID. La méthode d'action Welcome contient un paramètre (ID) correspondant à la spécification de l'URL dans la méthode RegisterRoutes. Public Module RouteConfig Public Sub RegisterRoutes(ByVal routes As RouteCollection) routes.IgnoreRoute("{resource}.axd/{*pathInfo}") routes.MapRoute( name:="Default", url:="{controller}/{action}/{id}", defaults:=New With {.controller = "Home", .action = "Index", .id = UrlParameter.Optional} ) End Sub End Module Dans les applications ASP.NET MVC, il est plus courant pour passer des paramètres en tant que données d'itinéraire (comme nous le faisions avec ID ci-dessus) que les transmettre sous forme de chaines de requête. Vous pourriez également ajouter une route pour passer le name et numtimes dans les paramètres sous forme de données d'itinéraire dans l'URL. Dans le fichier App_Start\RouteConfig.vb, ajoutez la route de "Hello" : Exécutez l'application et accédez à /localhost:XXX/HelloWorld/Welcome/Scott/3. Pour de nombreuses applications MVC, l'itinéraire par défaut fonctionne très bien. Vous apprendrez plus loin dans ce tutoriel comment passer des données à l'aide du modèle, et vous n'aurez pas à modifier l'itinéraire par défaut pour cela. Dans ces exemples, le contrôleur a fait la partie « VC » de MVC — autrement dit, le travail de vue et le contrôleur. Le contrôleur est de retour HTML directement. Normalement, vous ne souhaitez pas que le contrôleur retour HTML directement, car cela devient très lourd au code. Au lieu de cela, nous utiliserons généralement un fichier de modèle de vue distincte afin de générer la réponse HTML. Public Module RouteConfig Public Sub RegisterRoutes(ByVal routes As RouteCollection) routes.IgnoreRoute("{resource}.axd/{*pathInfo}") routes.MapRoute( name:="Default", url:="{controller}/{action}/{id}", defaults:=New With {.controller = "Home", .action = "Index", .id = UrlParameter.Optional} ) routes.MapRoute( name:="Hello", url:="{controller}/{action}/{name}/{id}" ) End Sub End Module Ajout d'une vue Dans cette section, vous allez modifier la classe HelloWorldController pour afficher des fichiers de modèle de vue permet d'encapsuler proprement le uploads/Ingenierie_Lourd/ asp-mvc-5-vb 1 .pdf

  • 29
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager