Heim > Backend-Entwicklung > C++ > Wie übergebe ich effizient mehrere Parameter an ASP.NET MVC-Aktionsmethoden?

Wie übergebe ich effizient mehrere Parameter an ASP.NET MVC-Aktionsmethoden?

DDD
Freigeben: 2025-01-16 23:19:12
Original
746 Leute haben es durchsucht

How to Efficiently Pass Multiple Parameters to ASP.NET MVC Action Methods?

Detaillierte Erläuterung des ASP.NET MVC-Multiparameter-Routings

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>
Nach dem Login kopieren

MVC füllt diese Parameter nahtlos auf, wenn eine URL wie

bereitgestellt wird
<code>/Artist/GetImages/?artistName=cher&apiKey=XXX</code>
Nach dem Login kopieren

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>
Nach dem Login kopieren

kann mit einer URL wie:

korrekt ausgefüllt werden
<code>/Artist/GetImages/cher?apiKey=XXX</code>
Nach dem Login kopieren

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>
Nach dem Login kopieren

Wenn Sie URLs unterstützen möchten wie:

<code>/Artist/GetImages/cher/api-key</code>
Nach dem Login kopieren

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>
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage