我有一個asp.net MVC的網站,我有這個網址:獲取第三個參數在asp.net MVC
Home/Index/
有一個動作,我想做的事情,目前我正在做使用查詢字符串,像這樣:
Home/Index/?action=1
我會用Request.QueryString["action"]
然後把它在我的代碼。
但這看起來並不如它應該是不錯的,我想是這樣的:
Home/Index/Action
那麼查詢字符串將是第三個參數。我該如何使用它,並檢查第三個參數是否存在,它的名稱?
我的路由配置是這樣的:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
我需要的路線改變任何東西或我可以進入我想要的方式,如果是這樣,我怎麼檢索此值?
編輯:
好吧。我想要做的是根據此參數在視圖中獲得不同的結果。
我現在所做的是創建兩個ActionResults
,它們使用相同的View將不同的值發送到ViewData
。
我想你可以通過使用asp.net web api 2的路由屬性來實現它。https://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing -in-web-api-2,以下是mvc屬性路由的詳細信息https://blogs.msdn.microsoft.com/webdev/2013/10/17/attribute-routing-in-asp-net-mvc-5/ – Vinod