Maison >développement back-end >C++ >Comment transmettre plusieurs paramètres à une méthode d'action ASP.NET MVC ?
Question :
Comment transmettre plusieurs paramètres à une méthode d'action dans ASP.NET MVC, en considérant le format d'appel API suivant ?
<code>http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist=cher&api_key=b25b959554ed76058ac220b7b2e0a026</code>
Réponse :
MVC prend en charge le passage de plusieurs paramètres en ajoutant des paramètres directement dans les paramètres de la méthode d'action. Par exemple, considérons la méthode d'action suivante :
<code>public ActionResult GetImages(string artistName, string apiKey)</code>
MVC remplit automatiquement les paramètres lorsqu'il reçoit une URL au format suivant :
<code>/Artist/GetImages/?artistName=cher&apiKey=XXX</code>
Pour le paramètre nommé "id", vous pouvez le mettre dans le chemin à la place de la chaîne de requête, comme ceci :
<code>public ActionResult GetImages(string id, string apiKey)</code>
Cette méthode sera correctement renseignée via l'URL suivante :
<code>/Artist/GetImages/cher?apiKey=XXX</code>
De plus, des règles de routage personnalisables permettent des scénarios plus complexes. Dans le fichier global.asax, vous pouvez redéfinir les règles de routage utilisées par MVC. Les règles par défaut sont les suivantes :
<code>routes.MapRoute( "Default", // 路由名称 "{controller}/{action}/{id}", // 带参数的 URL new { controller = "Home", action = "Index", id = "" } // 参数默认值 );</code>
Pour une URL comme /Artist/GetImages/cher/api-key, vous pouvez ajouter l'itinéraire suivant :
<code>routes.MapRoute( "ArtistImages", // 路由名称 "{controller}/{action}/{artistName}/{apikey}", // 带参数的 URL new { controller = "Home", action = "Index", artistName = "", apikey = "" } // 参数默认值 );</code>
Cela permettra d'utiliser des méthodes d'action similaires au premier exemple.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!