J'essaie ASP.NET MVC, mais, après avoir lu un énorme tutoriel, je suis légèrement confus. Je comprends comment les contrôleurs ont des actions vers lesquelles les URL sont routées, mais comment fonctionnent les pages d'accueil? La page d'accueil est-elle son propre contrôleur (par exemple "Home") qui n'a aucune action? Cela semble correct, mais comment est-ce que la fonctionnalité est implémentée sans actions (aucune action ne signifie aucune méthode qui appelle le moteur de vue)? En d'autres termes, ma question est la suivante: comment les pages d'accueil sont-elles implémentées (en termes de contrôleurs et de vues)? Pourriez-vous s'il vous plaît fournir exemple de code?Pages d'accueil dans ASP.NET MVC
Répondre
« Home » page est rien de plus que Action
arbitraire dans un Controller
spécifique qui retourne un certain View
Pour définir la « Home », page ou mieux libellé, la page par défaut, vous devez modifier le routage informations dans le fichier Global.asax.cs
:
public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
AreaRegistration.RegisterAllAreas();
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "NotHome", action = "NotIndex", id = "" } // Parameter defaults
);
Notez la définition d'itinéraire:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "NotHome", action = "NotIndex", id = "" } // Parameter defaults
);
Cette route est une route "attrape-tout", ce qui signifie qu'elle prendra n'importe quelle URL et la divulguera à un contrôleur spécifique et une action et un identifiant. Si aucune ou une des routes sont définies, il utilisera les paramètres par défaut:
new { controller = "NotHome", action = "NotIndex", id = "" }
Cela dit: « Si quelqu'un visite ma demande, mais n'a pas précisé le contrôleur ou l'action, je vais les rediriger vers l'action NotIndex
de mon contrôleur NotHome
". J'ai volontairement mis "Non" pour illustrer que les conventions de dénomination de "Default.aspx", "Index.html" ne s'appliquent pas aux routes MVC.
La page d'accueil correspond généralement à l'action/vue par défaut du contrôleur par défaut.
Vous souhaitez créer, par exemple, un HomeController
avec une action Index
et une vue correspondante, puis dans vos correspondances d'itinéraire vous créerais un défaut, fourre-tout la route, quelque chose comme ceci:
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" });
Cela dépend de ce que vous entendez par "page d'accueil". Si vous voulez dire la page vue lorsque vous allez à http://www.yoursite.com (sans page ou nom de contrôleur), alors c'est le contrôleur d'index, qui fonctionne comme tout autre sauf que vous ne voyez pas le nom du contrôleur dans l'URL.
- 1. 404 Pages dans ASP.NET MVC
- 2. Pages maîtres ASP.NET MVC
- 3. Pages maîtres imbriquées dans ASP.NET MVC 2
- 4. Où sont daccueil webaccess dans tfs2010? (WebAccessUserControl)
- 5. ASP.NET MVC 1.0 Pages maîtres imbriquées
- 6. Pages Web équivalentes pour ASP.Net MVC
- 7. ASP.NET MVC pages maîtres imbriquées, hériteront contenu
- 8. Asp.net MVC et les pages html normales
- 9. ASP.NET MVC: Inclusion d'une vue partielle MVC dans les pages ASP.NET Forms
- 10. Existe-t-il des pages maîtres imbriquées dans ASP.NET MVC?
- 11. jQuery dans une application ASP.net MVC avec Maître Pages
- 12. Affichage des pages HTML dans une application Web ASP.Net MVC
- 13. CSS et JavaScript dans ASP.NET MVC 2 Pages
- 14. Temps de construction de pages dans ASP.NET MVC et WebForms
- 15. Plusieurs formes dans une pages MVC (routage)
- 16. ASP.NET MVC: Comment utiliser les pages HTML statiques dans les applications MVC?
- 17. ASP.NET MVC: Quelle est la bonne façon de rediriger vers des pages/actions dans MVC?
- 18. Pages maîtres MVC imbriquées
- 19. pages de traitement dans asp.net
- 20. Pratiques de conception - Plusieurs pages avec ASP.NET MVC
- 21. Héritage visuel dans ASP.NET sans pages maîtres
- 22. Routage dans ASP.NET MVC 2.0
- 23. pages maîtres ASP.NET, les pages de contenu
- 24. Google Checkout dans ASP.Net MVC
- 25. JQuery, MVC et Master Pages
- 26. pages ASP.NET de C#
- 27. Assistant multi-pages dans MVC - où stocker les données entrées
- 28. Fonctionnalité SSI dans ASP.NET/ASP.NET MVC
- 29. télécharger des pages asp.net
- 30. Localisation dans ASP.NET MVC
Comment créer le contrôleur d'index? A-t-il besoin d'avoir une action? –
Désolé, je voulais dire Index Action. Tout contrôleur peut avoir une action d'index, qui est configurée par défaut dans le routage pour être la "maison" de ce contrôleur. –