Ad Code

Responsive Advertisement

adsense

ASP.NET MVC – Routing

Le routage consiste à orienter une requête HTTP vers un contrôleur et la fonctionnalité de ce traitement est implémentée dans System.Web.Routing. Cet assembly ne fait pas partie de ASP.NET MVC. C'est en fait partie du temps d'exécution ASP.NET, et il a été officiellement publié avec ASP.NET sous .NET 3.5.

System.Web.Routing est utilisé par le framework MVC, mais il est également utilisé par ASP.NET Dynamic Data.
Le cadre MVC s'appuie sur le routage pour diriger une requête vers un contrôleur. Le fichier Global.asax est la partie de votre application, où vous définirez l'itinéraire pour votre application.


C'est le code de l'événement de démarrage de l'application dans Global.asax à partir de l'application MVC que nous avons créée dans le chapitre précédent.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace MVCFirstApp {
public class MvcApplication : System.Web.HttpApplication {
protected void Application_Start() {
AreaRegistration.RegisterAllAreas();
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
}
}
Voici la mise en œuvre de la classe RouteConfig, qui contient une méthode RegisterRoutes.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace MVCFirstApp {
public class RouteConfig {
public static void RegisterRoutes(RouteCollection routes) {
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default", url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } );
}
}
}


Ainsi, cette route définie dans l'application est l'itinéraire par défaut. Comme on l'a vu dans le code ci-dessus, lorsque vous voyez une URL arriver sous la forme de (quelque chose) / (quelque chose) / (quelque chose), alors la première pièce est le nom du contrôleur, la deuxième partie est le nom de l'action et la troisième partie est Un paramètre ID.



Route personnalisée

Vous pouvez certainement ajouter vos propres routes. Si vous n'aimez pas ces noms d'action, si vous avez des paramètres d'ID différents ou si vous avez généralement une structure d'URL différente pour votre site, vous pouvez ajouter vos propres entrées d'itinéraire.

Considérons que nous avons une page qui contient la liste des processus. Voici le code, qui sera acheminé vers la page de processus.

routes.MapRoute(
 "Process",
 "Process/{action}/{id}",
 defaults: new { controller = "Process", action = "List ", id =
UrlParameter.Optional }
);



Ad Code

Responsive Advertisement