Tutoriel ASP.NET MVC pour les débutants : qu'est-ce que c'est, Architecture
Qu'est-ce qu'ASP.NET MVC ?
ASP.NET MVC est un framework de développement Web open source de Microsoft qui fournit une architecture Model View Controller. ASP.net MVC offre une alternative aux formulaires Web ASP.net pour la création d'applications Web. Il fait partie de la plate-forme .Net pour la création, le déploiement et l'exécution d'applications Web. Vous pouvez développer des applications Web et des sites Web à l'aide de HTML, CSS, jQuery, Javascript, etc.
Apprenez MVC avec ce didacticiel ASP.NET MVC qui couvre tous les concepts de base de MVC pour les débutants :
Pourquoi ASP.net MVC ?
Même si les formulaires Web ont connu un grand succès, Microsoft pensé à développer ASP.net MVC. Le principal problème avec ASP.net webForms est la performance.
Dans un application web, quatre aspects principaux définissent la performance : -
- Problèmes de temps de réponse
- Problème de tests unitaires
- Personnalisation HTML
- Réutilisabilité de la classe code-behind
ASP.net MVC excelle sur les paramètres ci-dessus.
Historique des versions de MVC
ASP.NET MVC1
- Sorti le 13 mars 2009
- Il fonctionne sur .NET 3.5
- Visual Studio 2008
- Architecture de modèle MVC avec WebForm Engine
- Les fonctionnalités principales incluent HTML et Tests unitaires, Aides Ajax, Routage, etc.
ASP.NET MVC2
- Cette version est sortie le 10 mars 2010
- Fonctionne sur .NET 3.5,4.0 et avec Microsoft Visual Studio 2008
- Inclut des fonctionnalités telles que des assistants basés sur des modèles, des assistants Ul avec un échafaudage automatique et des modèles personnalisables
- Il prend en charge les attributs DataAnnotations pour appliquer la validation du modèle côté client et côté serveur.
ASP.NET MVC3
- Il est sorti le 13 janvier 2011
- Fonctionne sur .NET 4.0 et avec Microsoft Visual Studio 2010
- Utilisation de NuGet pour fournir des logiciels et vous permet de gérer les dépendances sur toute la plateforme
- Rapidité JavaPrise en charge des scripts avec validation jQuery et liaison JSON
- Il offre des fonctionnalités telles que le moteur d'affichage Razor ; Attributs d'annotations de données améliorés pour la validation du modèle côté client et côté serveur
ASP.NET MVC4
- Cette version est sortie en août 2012
- Il fonctionne sur .NET 4.0, 4.5 et avec Visual Studio 2010 et Visual Studio 2012
- Améliorations apportées aux modèles de projet par défaut
- Offre des fonctionnalités telles que le modèle de projet mobile utilisant jQuery Mobile, la prise en charge des tâches pour les contrôleurs asynchrones, le regroupement, la minification, etc.
ASP.NET MVC5
- Sortie le 17 octobre 2013
- Fonctionne sur .NET 4.5, 4.5.1 et avec Visual Studio 2012 et Visual OneASP.NET
- Prend en charge le routage d'attributs dans MVC
Caractéristiques de MVC
- Testabilité facile et sans friction
- Contrôle total sur votre HTML, JavaScript et URL
- Tirer parti de l'existant ASP.Net Caractéristiques
- Une nouvelle option de présentation pour ASP.Net
- Une façon plus simple de programmer Asp.Net
- Séparation claire de la logique : modèle, vue, contrôleur
- Développement piloté par les tests
- Prise en charge du développement parallèle
Choses à retenir lors de la création d'une application MVC
Voici quelques éléments utiles de ce didacticiel ASP.NET MVC dont vous devez vous souvenir pour créer une application MVC :
- Vous devez vous rappeler qu'ASP .net MVC ne remplace PAS les applications basées sur les formulaires Web ASP.Net.
- L'approche de développement d'applications MVC doit être décidée en fonction des exigences de l'application et des fonctionnalités fournies par ASP .net MVC pour répondre aux besoins de développement spécifiques.
- Le processus de développement d'applications avec ASP .NET MVC est plus complexe que celui des applications basées sur des formulaires Web.
- La maintenabilité des applications est toujours plus élevée avec la séparation des tâches applicatives.

MVC est un modèle d'architecture logicielle qui suit la méthode de séparation des préoccupations. Dans ce modèle, les applications .Net sont divisées en trois parties interconnectées appelées Modèle, Vue et Contrôleur.
L'objectif du modèle MVC est que chacune de ces parties puisse être développée, testée de manière relativement isolée et également combinée pour créer une application très robuste.
Voyons-les tous en détail :
Modèles photo
Les objets de modèle sont des parties de l'application qui implémentent la logique de l'application. domaine de données. Il récupère et stocke l'état du modèle dans une base de données. Par exemple, un objet produit peut récupérer des informations à partir d'un base de données, opérer dessus. Écrivez ensuite les informations dans la table products du serveur SQL.
Vues
Les vues sont les composants utilisés pour afficher l'interface utilisateur (UI) de l'application, également appelée viewmodel dans MVC. Il affiche l'application .Net MVC créée à partir des données du modèle.
L'exemple courant serait une vue d'édition d'une table Item. Il affiche des zones de texte, des fenêtres contextuelles et des cases à cocher en fonction de l'état actuel des produits et des objets.
Les contrôleurs gèrent l'interaction de l'utilisateur, travaillent avec le modèle et sélectionnent une vue pour restituer cet affichage Ul. Dans une application .Net MVC, la vue affiche uniquement les informations, le contrôleur gère et répond aux entrées et interactions de l'utilisateur à l'aide de filtres d'action dans MVC.
Par exemple, le contrôleur gère les valeurs de chaîne de requête et transmet ces valeurs au modèle.
Formulaires Web contre MVC
Paramètres | WebFroms | MVC |
---|---|---|
Modèle | Asp.Net Web Forms suit un modèle de développement basé sur les événements. | Asp.Net MVC utilise un modèle de développement basé sur un modèle MVC. |
Utilisé depuis | Présent depuis 2002 | Il est sorti pour la première fois en 2009 |
Prise en charge de l'état d'affichage | Asp.Net Web Form prend en charge l'état d'affichage pour la gestion de l'état côté client. | .Net MVC ne prend pas en charge l'état d'affichage. |
Type d'URL | Asp.Net Web Form possède des URL basées sur des fichiers. Cela signifie que le nom de fichier existe dans les URL et qu'ils doivent exister physiquement. | Asp.Net MVC possède des URL basées sur des routes, c'est-à-dire des URL redirigées vers des contrôleurs et des actions. |
Syntaxe | Asp.Net MVC suit la syntaxe des formulaires Web. | Asp.Net MVC suit la syntaxe personnalisable. |
Type de vue | Formulaire Web, les vues sont étroitement liées au code derrière (ASPX-CS), c'est-à-dire à la logique. | MVC, les vues et la logique sont toujours conservées séparément. |
Aspect et sensation cohérents | Il comporte des pages maîtres pour une apparence cohérente. | Asp.Net MVC a des mises en page pour une apparence cohérente. |
Réutilisabilité du code | Web Form propose des contrôles utilisateur pour la réutilisation du code. | Asp.Net MVC a proposé des vues partielles pour la réutilisation du code. |
Contrôle pour HTML | Less contrôle sur le rendu HTML. | Contrôle total sur HTML |
Gestion de l'État | Gestion automatique de l'état des contrôles. | Gestion manuelle de l'état. |
Prise en charge du TDD | TDD faible ou personnalisé requis. | Encourage et inclut TDD ! |
Avantages d'ASP.NET MVC
- Applications hautement maintenables par défaut
- Il vous permet de remplacer n'importe quel composant de l'application.
- Meilleur support pour le développement piloté par les tests
- Les applications complexes sont faciles à gérer grâce aux divisions Modèle, Vue et Contrôleurs.
- Offrant un mécanisme de routage robuste avec un modèle de contrôleur frontal
- Offre un meilleur contrôle sur le comportement des applications avec l'élimination de l'état d'affichage et des formulaires basés sur le serveur
- Les applications .Net MVC sont prises en charge par de grandes équipes de développeurs et de concepteurs Web
- Il offre plus de contrôle sur les comportements de l'application. Il utilise également une bande passante optimisée pour les requêtes adressées au serveur
Inconvénients d'ASP.NET MVC
- Vous ne pouvez pas voir l’aperçu de la page de conception comme la page .aspx.
- Vous devez exécuter le programme à chaque fois pour voir sa conception réelle.
- Comprendre le flux de l'application peut être difficile
- C'est assez compliqué à mettre en œuvre, ce n'est donc pas une option idéale pour les applications de petit niveau.
- Il est difficile d'apprendre MVC pour ASP.NET, car cela nécessite une grande compréhension du modèle MVC.
Meilleures pratiques lors de l'utilisation d'ASP.Net MVC
- Créez un assembly séparé pour MODEL en cas de code volumineux et complexe pour éviter toute situation indésirable o
- Le modèle doit inclure la logique métier, la maintenance de session, la partie validation et la partie logique des données.
- VIEW ne doit contenir aucune logique métier ni maintenance de session, utilisez ViewData pour accéder aux données dans View
- La logique métier et l'accès aux données ne doivent jamais se produire dans ControllerViewData
- Le contrôleur ne doit être responsable que de la préparation et du renvoi d'une vue, de l'appel du modèle, de la redirection vers l'action, etc.
- Supprimez le code de démonstration de l'application lorsque vous la créez Supprimer AccountController
- Utilisez uniquement un moteur de vue spécifique pour créer un balisage HTML à partir de votre vue, car il s'agit d'une combinaison de HTML et de code de programmation.
Résumé
- ASP.NET MVC est un framework de développement Web open source de Microsoft qui fournit un Architecture du contrôleur de vue du modèle.
- ASP.net MVC offre une alternative aux formulaires Web ASP.net pour créer des applications Web.
- Le principal problème avec ASP.net webForms est la performance.
- ASP.net MVC offre une testabilité simple et sans friction avec un contrôle total sur votre HTML et vos URL.
- Vous devez vous rappeler qu'ASP .net MVC ne remplace PAS les applications basées sur les formulaires Web ASP.Net.
- L'approche du développement d'applications MVC ou du cycle de vie ASP.NET MVC doit être décidée en fonction des exigences de l'application et des fonctionnalités fournies par ASP .net MVC pour répondre aux besoins de développement spécifiques.
- ASP.NET MVC propose par défaut des applications hautement maintenables.
- Avec ASP.net, vous ne pouvez pas voir l'aperçu de la page de conception comme la page .aspx.
- En tant que bonne pratique, le modèle doit inclure la logique métier, la maintenance de session, la partie validation et la partie logique des données.