Maison >développement back-end >C++ >Comment acheminer plusieurs paramètres dans ASP.NET MVC ?

Comment acheminer plusieurs paramètres dans ASP.NET MVC ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-16 23:29:08445parcourir

How to Route Multiple Parameters in ASP.NET MVC?

Explication détaillée du routage multi-paramètres dans ASP.NET MVC

Lors de la conception d'une API RESTful basée sur ASP.NET MVC, il est souvent nécessaire de transmettre plusieurs paramètres à la méthode d'action du contrôleur. Cet article explorera comment gérer cette situation et expliquera en détail les méthodes disponibles.

Utiliser la chaîne de requête pour transmettre les paramètres

Par défaut, MVC mappe automatiquement les paramètres de chaîne de requête aux paramètres de méthode d'action. Considérez ces procédures :

<code class="language-csharp">public ActionResult GetImages(string artist, string apiKey)</code>

Une requête HTTP comme celle-ci :

<code>http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist=cher&api_key=my_key</code>

Les paramètres artiste et apiKey seront renseignés lors de l'appel de l'opération GetImages.

Cas particulier du paramètre "id"

Un paramètre nommé "id" peut être inclus dans le chemin de l'URL au lieu de la chaîne de requête. Par exemple, ce qui suit :

<code class="language-csharp">public ActionResult GetImages(string id, string apiKey)</code>

Peut être appelé en utilisant l'URL suivante :

<code>http://ws.audioscrobbler.com/2.0/Artist/GetImages/cher?api_key=my_key</code>

Règles de routage personnalisées

Pour les cas plus complexes, MVC offre la flexibilité de personnaliser les règles de routage pour rechercher des actions. Dans le fichier global.asax, modifiez la méthode routes.MapRoute, qui spécifie le mode de routage par défaut.

Exemple : Routage personnalisé avec des paramètres spécifiques

Pour gérer des URL comme celle-ci :

<code>http://ws.audioscrobbler.com/2.0/Artist/GetImages/cher/my_key</code>

Les itinéraires suivants peuvent être ajoutés :

<code class="language-csharp">routes.MapRoute(
    "ArtistImages",
    "{controller}/{action}/{artistName}/{apiKey}",
    new { controller = "Artist", action = "GetImages", artistName = "", apiKey = "" }
);</code>

Avec cette route personnalisée, l'opération GetImages sera appelée et les paramètres artistName et apiKey seront renseignés à partir du segment URL.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn