首頁 > 後端開發 > C++ > 如何在 ASP.NET MVC 中路由多個參數?

如何在 ASP.NET MVC 中路由多個參數?

Susan Sarandon
發布: 2025-01-16 23:29:08
原創
439 人瀏覽過

How to Route Multiple Parameters in ASP.NET MVC?

ASP.NET MVC 中的多參數路由詳解

在設計基於 ASP.NET MVC 的 RESTful API 時,經常需要向控制器操作方法傳遞多個參數。本文將探討如何處理這種情況,並詳細解釋可用的方法。

使用查詢字串傳遞參數

預設情況下,MVC 會自動將查詢字串參數對應到操作方法的參數。考慮以下操作方法:

<code class="language-csharp">public ActionResult GetImages(string artist, string apiKey)</code>
登入後複製

類似這樣的 HTTP 請求:

<code>http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist=cher&api_key=my_key</code>
登入後複製

會在呼叫 GetImages 操作時填入 artist 和 apiKey 參數。

“id” 參數的特殊情況

名為「id」的參數可以包含在 URL 路徑中,而不是查詢字串中。例如,以下操作:

<code class="language-csharp">public ActionResult GetImages(string id, string apiKey)</code>
登入後複製

可以使用以下 URL 呼叫:

<code>http://ws.audioscrobbler.com/2.0/Artist/GetImages/cher?api_key=my_key</code>
登入後複製

自訂路由規則

對於更複雜的情況,MVC 提供了自訂路由規則以查找操作的靈活性。在 global.asax 檔案中,編輯 routes.MapRoute 方法,該方法指定預設路由模式。

範例:特定參數的自訂路由

為了處理類似這樣的 URL:

<code>http://ws.audioscrobbler.com/2.0/Artist/GetImages/cher/my_key</code>
登入後複製

可以新增以下路由:

<code class="language-csharp">routes.MapRoute(
    "ArtistImages",
    "{controller}/{action}/{artistName}/{apiKey}",
    new { controller = "Artist", action = "GetImages", artistName = "", apiKey = "" }
);</code>
登入後複製

使用此自訂路由,GetImages 操作將被調用,artistName 和 apiKey 參數將從 URL 段填入。

以上是如何在 ASP.NET MVC 中路由多個參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板