2. ASP.NET MVC
framework
ASP.NET MVC est un framework
d'application Web développé par
Microsoft qui implémente le modèle
modèle-vue-contrôleur (MVC).Le
modèle MVC définit les applications
Web avec 3 couches logiques :
Modèle (couche métier)
Vue (couche d'affichage)
Contrôleur (contrôle d'entrée)
3. Le framework MVC comprend les
composants suivants :
Modèles. Les objets de modèle sont les parties de
l'application qui implémentent la logique du domaine de
données de l'application. Souvent, les objets de modèle
récupèrent et stockent l'état du modèle dans une base de
données.
Vues. Les vues sont les composants qui affichent l'interface
utilisateur (IU) de l'application. En règle générale, cette
interface utilisateur est créée à partir des données du modèle.
Contrôleurs. Les contrôleurs sont les composants qui gèrent
l'interaction de l'utilisateur, travaillent avec le modèle et
finalement sélectionnent une vue à rendre qui affiche
l'interface utilisateur. Dans une application MVC, la vue affiche
uniquement des informations ; le contrôleur gère et répond à
l'entrée et à l'interaction de l'utilisateur.
4. Caractéristiques du ASP.Net MVC framework
1. DES OPTIONS COMPATIBLES ILLIMITÉES.Avec ASP.NET MVC support multiplateforme, il permet de
sélectionner Windows, Linux ou Mac OS pour le développement d'applications Web. Il offre des options
compatibles avec J.Script.NET, HTML/JS, VB.NET, WML, XML, J# et C#.
2. Des performances estimées. La compilation automatique du code du serveur. Des fonctionnalités telles
que les services de mise en cache, le profilage d'exécution, la liaison anticipée, l'optimisation native, la
compilation just-in-time (JIT) et la gestion puissante jouent un rôle viable pour élever la production des
applications ASP.NET MVC.
3. FACILE À DÉPLOYER ET À MAINTENIR Le framework ASP.NET MVC propose déjà une configuration
intégrée et des paramètres fixes, assurant le déploiement rapide des applications. Il aide les programmeurs à
simplement copier le code du serveur pour déployer l'ensemble de l'application. Par conséquent, il n'est pas
nécessaire d'enregistrer les composants avant le déploiement.
SOUTIEN POTENTIEL POUR LE DÉPLOIEMENT DU CLOUD L'architecture modulaire du framework
ASP.NET MVC permet à l'entreprise de faire l'expérience du déploiement cloud en offrant une atmosphère
flexible et une modularité étendue où vous pouvez développer des applications pour l'infrastructure cloud.
5. Caractéristiques
Outre les fonctionnalités ci-dessus, ASP.NET
MVC offre une excellente prise en charge
des appareils mobiles, de l'injection de
dépendances (DI), des packages NuGet, des
extensions fluides des fonctionnalités de
l'application et des étapes de développement
de l'optimisation des moteurs de recherche
(SEO).
6. ● Le modèle doit contenir toute
la logique métier de
l'application, la logique de
validation et la logique d'accès
à la base de données.
● ASP.NET MVC est compatible
avec toutes les technologies
d'accès aux données (par
exemple LINQ to SQL)
● Tous les fichiers .edmx, fichiers
.dbml, etc. se trouvent dans le
dossier Modèles
Le modèle
7. ● C'est une classe
● Dérive de la classe de base
System.Web.Mvc.Controller
● Générer la réponse à la
requête du navigateur
Qu'est-ce que le
contrôleur ?
8. • Méthode publique de la
classe Controller
• Ne peut pas être surchargé
• Ne peut pas être une
méthode statique
• Renvoie le résultat de
l'action
Controller Actions
9. Types de Action Result
• ViewResult
• EmptyResult
• Redirect Result
• JsonResult
• JavascriptResult
• ContentResult
• FileContentResult
• FileStreamResult
• FilePathResult
10. • La plupart des actions du contrôleur renvoient des vues
• Le chemin d'accès à la vue est déduit du nom du contrôleur et du nom de
l'action du contrôleur.
• Une vue est un document (X)HTML standard qui peut contenir des scripts.
• délimiteurs de script <% et %> dans les vues
Vues
13. Le framework ASP.NET MVC offre les
avantages suivants :
Il facilite la gestion de la
complexité en divisant une
application en modèle, vue
et contrôleur.
Il utilise un modèle de
contrôleur frontal qui traite
les demandes d'application
Web via un seul contrôleur.
Il n'utilise pas l'état d'affichage
ou les formulaires basés sur le
serveur.
Il fournit un meilleur
support pour le
développement piloté par
les tests (TDD).
14. comment fonctionne le framework ASP.Net MVC
Facteurs de
comparaison
ASP.NET Web Forms ASP.NET MVC
Approche de rendu Suit l'approche du Page Control pattern pour la mise en page du
rendu
Front Controller Approach est utilisée
Séparation des
préoccupations
Aucune séparation des préoccupations et tous les Web Forms
sont étroitement couplés
Séparation des préoccupations très nette
Tests automatisés Les tests automatisés sont vraiment difficiles TDD est très simple dans MVS
État Oui, ViewState est utilisé Stateless
Performance Lent en raison du Large ViewStated Rapide grâce à une approche propre et sans
ViewState
Cycle de vie Le modèle ASP.NET WebForms suit un cycle de vie de page Pas de cycle de vie de page comme WebForms
Contrôles Beaucoup de Server Side controls Aucun contrôle prêt à l'emploi des contrôles tiers
ne peut être utilisé
Contrôle de la mise
en page
Fournit un contrôle limité sur HTML, JavaScript et CSS, ce qui
est nécessaire dans de nombreux cas.
Contrôle total sur HTML, JavaScript et CSS.
Scalabilite Il convient aux applications à petite échelle avec une taille
d'équipe limitée
C'est mieux ainsi que l'approche recommandée
pour les applications à grande échelle
15. Conclusion
En conclusion, le framework ASP.Net MVC est un outil de
développement web puissant et efficace qui permet de créer
des applications web de manière structurée et modulaire. Il
offre un modèle de conception MVC qui facilite la séparation
des préoccupations, une intégration aisée avec d'autres
technologies Microsoft telles que Entity Framework et Visual
Studio, ainsi qu'une grande flexibilité en termes de
personnalisation et de développement d'extensions. En outre,
grâce à sa compatibilité avec la plateforme .NET, il est
possible de développer des applications web robustes et
évolutives. En somme, ASP.Net MVC est un choix judicieux
pour les développeurs web qui souhaitent créer des
applications web modernes et performantes.