Je me demande mécanisme de mappage des contrôleurs aux vues. Je ne peux pas comprendre comment le mappage peut être possible Si nous revenons juste la valeur de la méthode View(). L'appel de la méthode View() de la classe contrôleur a surchargé la méthode View avec des paramètres null. Mais comment peut-on effectuer un mappage vers des vues sans valeur de retour spécifiée de la méthode View()?À propos de MVC 2 Afficher le mécanisme de mappage
0
A
Répondre
2
Le contrôleur connaît l'action invoquée et, par convention, si vous ne spécifiez pas de nom de vue, il recherchera dans Views/ControllerName/ActionName.aspx
(.ascx
) une vue correspondante. S'il ne trouve pas, il vous montrera une liste des emplacements recherchés.
Voici plus de détails sur la façon dont cela fonctionne:
- Demande soumise à
/ControllerName/ActionName
- La demande est intercepté par le pipeline ASP.NET et le moteur de routage basé sur la configuration extrait les jetons. Si les routes par défaut sont configurées, elle extrait controller = "ControllerName" et action = "ActionName".
- Le moteur de routage examine le cache du contrôleur pour voir s'il existe un type correspondant au nom
ControllerNameController
. - S'il existe, il est instancié à l'aide d'une fabrique de contrôleurs et la méthode appelée ActionName est invoquée. Si le contrôleur n'existe pas et que la fabrique de contrôleurs par défaut est utilisée, la réflexion est utilisée pour rechercher tous les types dérivés de
Controller
dans tous les assemblys référencés et ces types sont mis en cache. - L'action est exécutée et le moteur de vue recherche un modèle stocké en utilisant les conventions décrites précédemment.
1
La méthode d'action du contrôleur est appelée par l'infrastructure ASP.NET MVC. Les règles de routage que vous avez global.asax définissent quelle URL est mappée à quelle méthode d'action.
Questions connexes
- 1. Mappage de carte MVC 2 d'un contrôleur à un autre
- 2. Question à propos de ASP.NET MVC 2 Custom ViewModels
- 3. Mappage d'itinéraires compatible avec le contenu dans ASP.NET MVC 2
- 4. ASP. NET MVC: Mappage d'entités pour afficher le modèle
- 5. Question à propos de Classic MVC
- 6. ASP.NET MVC Mécanisme de verrouillage d'objet
- 7. Extension du mécanisme de routage Asp.Net MVC
- 8. comment gérer le mécanisme de rafraîchissement dans GXT MVC
- 9. MVC 2 Entity Framework Afficher le modèle Insérer
- 10. Confusion à propos de Mono?
- 11. Confus à propos de l'utilisation de ContextLoaderListener dans Spring MVC
- 12. Utilisation de ASP.NET MVC 2 pour afficher l'enregistrement joint
- 13. Spring MVC très confus à propos des mappages de contrôleur
- 14. question à propos de concevoir
- 15. Conversion de .NET MVC 2 à Django
- 16. question Beginnner à propos de PHP et MVC
- 17. asp.net mvc mappage d'itinéraires anciens
- 18. Question à propos de Environment.ProcessorCount
- 19. jQuery.ui.datepicker avec le mappage de datFormat Asp.Net MVC
- 20. Test de ASP.NET MVC Afficher le modèle
- 21. À propos de StreamReader
- 22. à propos de datagridview
- 23. à propos de httpd.conf
- 24. à propos de stumbler
- 25. Mécanisme de verrouillage à base de Futex
- 26. ASP.NET MVC 2 Post AJAX à partir de JavaScript
- 27. Reliure de modèle à afficher dans MVC
- 28. à propos de removeObjectAtIndex
- 29. problème à propos de @ 2X
- 30. ASP.NET MVC 2 Automapper Placement
Cependant, je ne sais pas comment Controller peut connaître l'action invoquée. Alors pouvez-vous écrire plus de détails? – Freshblood
L'ensemble du paradigme Controller est basé sur la réflexion des noms de méthodes de votre classe Controller. Par conséquent, lors de l'exécution d'une action, il est bien connu quel est le nom de la méthode actuelle (Action). –
Vous voulez dire que la classe qui appelle les méthodes Controller connaît déjà le nom de la méthode, n'est-ce pas? – Freshblood