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
DDDOriginal
2025-01-16 23:19:12789Durchsuche

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>

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!

Stellungnahme:
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