Dans le processus de création d'une API ASP.NET MVC, vous pouvez rencontrer des situations dans lesquelles le point de terminaison de l'API nécessite plusieurs paramètres. Par exemple, lorsque vous utilisez l'exemple d'URL qui contient les paramètres « artiste » et « api_key », vous ne savez peut-être pas comment transmettre ces paramètres à votre méthode d'action dans MVC.
Passer les paramètres à la méthode d'opération
Dans MVC, vous pouvez facilement transmettre des paramètres aux méthodes d'action en les ajoutant simplement en tant que paramètres de méthode. Par exemple, étant donné une opération :
<code class="language-csharp">public ActionResult GetImages(string artistName, string apiKey)</code>
MVC remplira ces paramètres de manière transparente lorsqu'il sera fourni avec une URL telle que :
<code>/Artist/GetImages/?artistName=cher&apiKey=XXX</code>
Gérer le paramètre nommé "ID"
MVC fournit une fonctionnalité unique pour le paramètre nommé "id". Tout paramètre portant ce nom peut être placé directement dans le chemin plutôt que dans la chaîne de requête. Donc, une méthode comme celle-ci :
<code class="language-csharp">public ActionResult GetImages(string id, string apiKey)</code>
peut être renseigné correctement en utilisant une URL telle que :
<code>/Artist/GetImages/cher?apiKey=XXX</code>
Règles de routage personnalisées
Pour les cas plus complexes, vous pouvez personnaliser les règles de routage que MVC utilise pour les opérations de recherche. Le fichier global.asax contient des règles de routage modifiables. Par défaut, les règles sont définies comme :
<code class="language-csharp">routes.MapRoute( "Default", // 路由名称 "{controller}/{action}/{id}", // 带参数的URL new { controller = "Home", action = "Index", id = "" } // 参数默认值 );</code>
Si vous souhaitez prendre en charge des URL telles que :
<code>/Artist/GetImages/cher/api-key</code>
Vous pouvez ajouter une règle de routage supplémentaire, par exemple :
<code class="language-csharp">routes.MapRoute( "ArtistImages", // 路由名称 "{controller}/{action}/{artistName}/{apikey}", // 带参数的URL new { controller = "Home", action = "Index", artistName = "", apikey = "" } // 参数默认值 );</code>
En faisant cela, vous pouvez utiliser l'exemple de méthode fourni précédemment.
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!