簡體   English   中英

具有2個參數的MVC Url.Action

[英]MVC Url.Action with 2 parameters

我在控制器中傳遞了以下兩個參數,具體如下:

    url = Url.Action("ViewReq ", "ProgramT ", new   System.Web.Routing.RouteValueDictionary(new { id = spid pgid = pid }), "http", Request.Url.Host);

當我查看此內容時,它顯示為:

    http://localhost/Masa/ProgramT/ViewReq/20036?pgid=00001

我喜歡它顯示為:

http:// localhost / Masa / ProgramT / ViewReq?id = 20036&pgid = 00001

如何修改UrlAction以這種方式顯示?

您可以在Global.asax修改默認路由注冊,以使{id}令牌不屬於您的網址。 將其刪除。

我相信達林是正確的。

要獲得所需的URL,只需保持URL生成代碼相同即可

Url.Action("ViewReq ", "ProgramT ", new   System.Web.Routing.RouteValueDictionary(new { id = spid, pgid = pid }), "http", Request.Url.Host);

然后在Global.asax文件中,在默認路由下方添加以下路由。

 routes.MapRoute(
       "YourNewRoute", // Route name
       "ProgramT/ViewReq/{id}/{pgid}", // URL with parameters
       new { controller = "ProgramT", action = "ViewReq",  id = UrlParameter.Optional, pgid = UrlParameter.Optional  } // Parameter defaults
   );

然后,您應該看到該URL為(假設id為20036,而pgid為00001)

http://localhost/Masa/ProgramT/ViewReq/20036?pgid=00001

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM