Les paramètres sont directement pris en charge dans MVC en ajoutant simplement des paramètres à vos méthodes d'action. Étant donné une action comme celle-ci:
public ActionResult GetImages(string artistName, string apiKey)
MVC remplira automatiquement les paramètres lorsqu'il reçoit une URL telle que:
/Artist/GetImages/?artistName=cher&apiKey=XXX
Un cas spécial supplémentaire est celui des paramètres nommés "id". Tout paramètre nommé ID peut être placé dans le chemin plutôt que dans la chaîne de requête, donc quelque chose comme:
public ActionResult GetImages(string id, string apiKey)
serait rempli correctement avec une URL comme celle-ci:
/Artist/GetImages/cher?apiKey=XXX
En outre, si vous avez des scénarios plus compliqués, vous pouvez personnaliser les règles de routage que MVC utilise pour localiser une action. Votre fichier global.asax contient des règles de routage qui peuvent être personnalisées. Par défaut, la règle ressemble à ceci:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
Si vous souhaitez prendre en charge une URL comme
/Artist/GetImages/cher/api-key
vous pouvez ajouter un itinéraire comme:
routes.MapRoute(
"ArtistImages", // Route name
"{controller}/{action}/{artistName}/{apikey}", // URL with parameters
new { controller = "Home", action = "Index", artistName = "", apikey = "" } // Parameter defaults
);
et une méthode comme le premier exemple ci-dessus.