Multiparameter-Routing in ASP.NET MVC
Beim Erstellen einer API mit ASP.NET MVC müssen Sie häufig mehrere Parameter an Aktionsmethoden übergeben, um Daten abzurufen oder zu bearbeiten. In diesem Artikel wird untersucht, wie dies mithilfe des von MVC bereitgestellten Routing-Mechanismus erreicht werden kann.
Abfragezeichenfolge verwenden, um Parameter zu übergeben
Standardmäßig unterstützt MVC die Übergabe von Parametern an Aktionsmethoden über Abfragezeichenfolgen. Die in der Frage angegebene URL, die der folgenden ähnelt, verwendet diesen Ansatz:
<code>http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist=cher&api_key=b25b959554ed76058ac220b7b2e0a026</code>
In MVC entspricht der Controller „artist“, die Aktion entspricht „getImages“ und die Abfragezeichenfolgenparameter „artist“ und „api_key“ werden automatisch in die Parameter der Aktionsmethode eingefügt.
Benutzerdefinierte Routing-Regeln
Während MVC die Übergabe grundlegender Parameter über Abfragezeichenfolgen unterstützt, ermöglicht es auch benutzerdefinierte Routing-Regeln. Dies bietet eine größere Flexibilität beim Umgang mit komplexeren URL-Mustern.
Routing-Regeln werden in der Datei global.asax definiert und folgen einem bestimmten Format. Standardmäßig folgen sie dem folgenden Muster:
<code>routes.MapRoute( "Default", // 路由名称 "{controller}/{action}/{id}", // 带参数的 URL new { controller = "Home", action = "Index", id = "" } // 参数默认值 );</code>
Um URL-Muster wie „/Artist/GetImages/cher/api-key“ zu unterstützen, kann eine neue Route hinzugefügt werden:
<code>routes.MapRoute( "ArtistImages", // 路由名称 "{controller}/{action}/{artistName}/{apikey}", // 带参数的 URL new { controller = "Home", action = "Index", artistName = "", apikey = "" } // 参数默认值 );</code>
In diesem Fall werden die Tags „{artistName}“ und „{apikey}“ aus dem URL-Pfad gefüllt, und die Parameter „artistName“ und „apikey“ in der Aktionsmethode werden entsprechend gefüllt.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit mehreren Parametern beim ASP.NET MVC-Routing um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!