Beim Erstellen einer ASP.NET MVC-API können Situationen auftreten, in denen der API-Endpunkt mehrere Parameter erfordert. Wenn Sie beispielsweise die Beispiel-URL verwenden, die die Parameter „artist“ und „api_key“ enthält, ist Ihnen möglicherweise nicht klar, wie Sie diese Parameter an Ihre Aktionsmethode in MVC übergeben sollen.
Parameter an die Operationsmethode übergeben
In MVC können Sie Parameter einfach an Aktionsmethoden übergeben, indem Sie sie einfach als Methodenparameter hinzufügen. Zum Beispiel eine gegebene Operation:
<code class="language-csharp">public ActionResult GetImages(string artistName, string apiKey)</code>
MVC füllt diese Parameter nahtlos auf, wenn eine URL wie
bereitgestellt wird<code>/Artist/GetImages/?artistName=cher&apiKey=XXX</code>
Verarbeiten Sie den Parameter mit dem Namen „ID“
MVC bietet eine einzigartige Funktion für den Parameter namens „id“. Jeder Parameter mit diesem Namen kann direkt im Pfad statt in der Abfragezeichenfolge platziert werden. Also eine Methode wie diese:
<code class="language-csharp">public ActionResult GetImages(string id, string apiKey)</code>
kann mit einer URL wie:
korrekt ausgefüllt werden<code>/Artist/GetImages/cher?apiKey=XXX</code>
Benutzerdefinierte Routing-Regeln
Für komplexere Fälle können Sie die Routing-Regeln anpassen, die MVC für Suchvorgänge verwendet. Die Datei global.asax enthält Routing-Regeln, die geändert werden können. Standardmäßig sind die Regeln wie folgt definiert:
<code class="language-csharp">routes.MapRoute( "Default", // 路由名称 "{controller}/{action}/{id}", // 带参数的URL new { controller = "Home", action = "Index", id = "" } // 参数默认值 );</code>
Wenn Sie URLs unterstützen möchten wie:
<code>/Artist/GetImages/cher/api-key</code>
Sie können eine zusätzliche Routing-Regel hinzufügen, zum Beispiel:
<code class="language-csharp">routes.MapRoute( "ArtistImages", // 路由名称 "{controller}/{action}/{artistName}/{apikey}", // 带参数的URL new { controller = "Home", action = "Index", artistName = "", apikey = "" } // 参数默认值 );</code>
Auf diese Weise können Sie die zuvor bereitgestellte Beispielmethode verwenden.
Das obige ist der detaillierte Inhalt vonWie übergebe ich effizient mehrere Parameter an ASP.NET MVC-Aktionsmethoden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!