Maison > Article > développement back-end > Qu’est-ce qu’ASP.NET MVC ? Résumé ASP.NET MVC
Présentation d'ASP.Net MVC
Modèle-Vue-Contrôleur ( Le modèle architectural MVC) divise une application en trois composants principaux : le modèle, la vue et le contrôleur. Le framework ASP.NET MVC fournit un mode alternatif au mode ASP.NET Web Forms pour créer des applications Web. Le framework ASP.NET MVC est un framework de présentation léger et très testable qui (comme les applications basées sur Web Forms) s'intègre aux fonctionnalités ASP.NET existantes telles que les pages maîtres et l'authentification basée sur l'adhésion. Le framework MVC est défini dans l'assembly System.Web.Mvc.
Modèle de conception MVC
MVC est un modèle de conception standard que de nombreux développeurs connaissent. Certains types d'applications Web bénéficieront du framework MVC. Certains types continueront à utiliser le modèle d’application ASP.NET traditionnel basé sur les formulaires Web et les publications. D'autres types d'applications Web combineront ces deux méthodes ; les deux méthodes s'excluent l'une l'autre.
Le framework MVC comprend les composants suivants :
Modèle. Les objets de modèle sont des composants d'application qui implémentent la logique du domaine des données d'application. En règle générale, les objets de modèle récupèrent l'état du modèle et le stockent dans une base de données. Par exemple, un objet Product peut récupérer des informations d'une base de données, manipuler ces informations, puis réécrire les informations mises à jour dans la table Products de la base de données SQL Server.
Dans les petites applications, les modèles sont souvent séparés conceptuellement plutôt que réellement séparés. Par exemple, si une application lit uniquement un ensemble de données et l'envoie à une vue, l'application ne dispose pas de couche de modèle physique ni de classes associées. Dans ce cas, l'ensemble de données sert d'objet modèle.
Voir. Les vues sont des composants qui affichent l'interface utilisateur (UI) de l'application. En règle générale, cette interface utilisateur est créée à l'aide des données du modèle. Un exemple de vue est la vue d'édition de la table Produits, qui affiche des zones de texte, des listes déroulantes et des cases à cocher en fonction de l'état actuel de l'objet Produit.
Contrôleur. Les contrôleurs sont les composants qui gèrent l'interaction de l'utilisateur, utilisent des modèles et sélectionnent finalement les vues à restituer pour afficher l'interface utilisateur. Dans une application MVC, les vues affichent uniquement des informations ; les contrôleurs gèrent et répondent aux entrées et interactions de l'utilisateur. Par exemple, le contrôleur traite les valeurs de la chaîne de requête et transmet ces valeurs au modèle, qui peut utiliser ces valeurs pour interroger la base de données.
Le modèle MVC vous aide à créer des applications qui séparent les différents aspects de l'application (logique d'entrée, logique métier et logique d'interface utilisateur) tout en fournissant un couplage lâche entre ces éléments. Ce modèle spécifie où chaque type de logique doit résider dans l'application. La logique de l'interface utilisateur réside dans les vues. La logique d'entrée est située dans le contrôleur. La logique métier réside dans le modèle. L'utilisation de cette séparation vous aide à simplifier les tâches complexes lors de la création de votre application, car elle vous permet de vous concentrer sur la mise en œuvre d'un aspect de votre application à la fois. Par exemple, vous pouvez vous concentrer sur des vues indépendantes de la logique métier.
Le couplage lâche entre ces trois composants principaux d'une application MVC facilite également le développement parallèle. Par exemple, un développeur peut travailler sur les vues, un deuxième développeur peut travailler sur la logique du contrôleur et un troisième développeur peut se concentrer sur la logique métier du modèle.
Prise en charge du développement piloté par les tests
L'utilisation du modèle MVC peut non seulement simplifier la complexité, mais également rendre les tests d'application plus rapides que ceux basés sur des formulaires Web. Tester les applications Web ASP.NET devient plus facile. Par exemple, dans une application Web ASP.NET basée sur Web Forms, une seule classe est utilisée à la fois pour afficher la sortie et pour répondre aux entrées de l'utilisateur. L'écriture de tests automatisés pour les applications ASP.NET basées sur Web Forms peut s'avérer complexe, car pour tester une seule page, vous devez instancier la classe de page, tous ses contrôles enfants et les autres classes associées dans l'application. Étant donné qu’un grand nombre de classes sont instanciées pour exécuter une page, il peut être difficile d’écrire des tests se concentrant spécifiquement sur une seule partie de l’application. Par conséquent, tester les applications ASP.NET basées sur Web Forms est plus difficile à mettre en œuvre que tester les applications MVC. De plus, le test des applications ASP.NET basées sur Web Forms nécessite un serveur Web. Le framework MVC permet la séparation des composants et une utilisation intensive des interfaces, de sorte que les composants individuels peuvent être testés séparément du reste du framework.
Quand créer une application MVC
Vous devez soigneusement réfléchir à l'utilisation du framework ASP.NET MVC ou du modèle ASP.NET Web Forms pour implémenter votre application Web. . Le framework MVC ne remplace pas le modèle Web Forms ; vous pouvez utiliser l'un ou l'autre framework pour vos applications Web. (Si vous disposez d'applications basées sur Web Forms, ces applications continueront à fonctionner exactement de la même manière qu'elles l'ont toujours fait.)
Avant de décider d'utiliser le framework MVC ou le modèle Web Forms pour un site Web particulier, veuillez peser les mérites de chaque approche.
Le framework ASP.NET MVC offre les avantages suivants :
Facilitez les tâches complexes en divisant votre application en modèles, vues et contrôleurs.
Il n'utilise pas d'état d'affichage ni de formulaires basés sur le serveur. Cela rend le framework MVC particulièrement adapté aux développeurs qui souhaitent un contrôle total sur le comportement des applications.
Il utilise un modèle de contrôleur frontal qui gère les requêtes d'application Web via un seul contrôleur. Cela vous permet de concevoir une application prenant en charge une infrastructure de routage riche. Pour plus d’informations, consultez Contrôleur frontal.
Il offre un meilleur support pour le développement piloté par les tests (TDD).
Il est idéal pour les applications Web prises en charge par de grandes équipes de développeurs, ainsi que pour les concepteurs Web qui nécessitent un contrôle strict sur le comportement des applications.
Le framework basé sur Web Forms présente les avantages suivants :
Il prend en charge un modèle d'événement qui conserve l'état sur HTTP, ce qui est bénéfique pour le développement de sites Web métier. candidatures. Les applications basées sur Web Forms fournissent de nombreux événements pris en charge dans des centaines de contrôles serveur.
Il utilise le modèle de contrôleur de page pour ajouter des fonctionnalités à une seule page. Pour plus d’informations, consultez Contrôleur de page.
Il utilise l'état d'affichage pour les formulaires basés sur le serveur, ce qui facilite la gestion des informations d'état.
Il est idéal pour les petites équipes de développeurs et de concepteurs Web qui souhaitent développer rapidement des applications avec un grand nombre de composants.
Généralement, pour le développement d'applications, c'est plus simple car les composants (classes Page, contrôles, etc.) sont étroitement intégrés et nécessitent généralement moins de code que le modèle MVC.
Le framework ASP.NET MVC présente les fonctionnalités suivantes :
Séparation des tâches d'application (logique d'entrée, logique métier et logique d'interface utilisateur), testabilité et développement piloté par les tests ( TDD). Tous les protocoles principaux du framework MVC sont basés sur des interfaces et peuvent être testés à l'aide d'objets fictifs, qui sont des objets fictifs imitant le comportement d'objets réels dans l'application. Vous pouvez tester unitairement votre application sans avoir à exécuter le contrôleur dans le processus ASP.NET, ce qui rend les tests unitaires rapides et flexibles. Vous pouvez utiliser n’importe quel framework de tests unitaires compatible avec le .NET Framework.
Framework extensible et enfichable. Les composants du framework ASP.NET MVC sont conçus de manière à pouvoir être facilement remplacés ou personnalisés. Vous pouvez connecter vos propres moteurs d'affichage, stratégies de routage d'URL, sérialisation des paramètres de méthode d'action et d'autres composants. Le framework ASP.NET MVC prend également en charge l'utilisation de modèles de conteneurs d'injection de dépendances (DI) et d'inversion de contrôle (IOC). DI vous permet d'injecter des objets dans une classe plutôt que de compter sur la classe pour créer l'objet elle-même. IOC spécifie si un objet nécessite d'autres objets, le premier objet doit obtenir le deuxième objet d'une source externe comme un fichier de configuration. De cette façon, les tests seront plus faciles.
Prise en charge étendue du routage ASP.NET, un puissant composant de mappage d'URL qui vous permet de créer des applications avec des URL de recherche faciles à comprendre. Les URL ne contiennent pas nécessairement d'extensions de fichier et sont conçues pour prendre en charge des modèles de dénomination d'URL bien adaptés à l'optimisation des moteurs de recherche (SEO) et à l'adressage par transfert d'état de représentation (REST).
Prend en charge l'utilisation du balisage de la page ASP.NET existante (fichier .aspx), du contrôle utilisateur (fichier .ascx) et des fichiers de balisage de la page maître (fichier .master) comme modèles d'affichage. Vous pouvez combiner les fonctionnalités ASP.NET existantes telles que les pages maîtres imbriquées, les expressions en ligne (), les contrôles serveur déclaratifs, les modèles, la liaison de données, la localisation, etc. avec le framework ASP.NET MVC utilisé en combinaison.
Prend en charge les fonctionnalités ASP.NET existantes. ASP.NET MVC vous permet d'utiliser des fonctionnalités telles que l'authentification par formulaires et l'authentification Windows, l'autorisation d'URL, l'adhésion et les rôles, la mise en cache des sorties et des données, la gestion de l'état des sessions et des profils, la surveillance de l'état, le système de configuration et l'architecture du fournisseur.
【Recommandations associées】
1 Compréhension approfondie des différences entre ASP.NET MVC et WebForm
2. 🎜>Introduction détaillée ASP.NET MVC--contrôleur
3Introduction détaillée à ASP.NET MVC--Vue
4. introduction ASP.NET MVC--RoutingExemple de code pour développer l'outil d'édition de menu personnalisé WeChat via asp.net mvcCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!