簡體   English   中英

.net HTML.RouteLink將參數作為鍵值對而不是rout傳遞

[英].net HTML.RouteLink passes parameter as key-value pair not rout

所以在我的RouteConfig中,我有一條看起來像這樣的路由:

        routes.MapRoute(
           name: "Default",
           url: "{controller}/{action}/{GUID}",
           defaults: new { controller = "Home", action = "Index", GUID = UrlParameter.Optional }
       );

我正在建立這樣的鏈接:

@Html.RouteLink("Thing", new { controller = "Modules", action = "View", GUID = "27ACBB7C-075A-49BD-9B43-000EAE3E6B6F" })

我希望它創建以下鏈接:

<a href = ".../Modules/View/27ACBB7C-075A-49BD-9B43-000EAE3E6B6F">Thing</a>

但是相反,我得到了:

<a href = ".../Modules/View?GUID=27ACBB7C-075A-49BD-9B43-000EAE3E6B6F">Thing</a>

如何讓RouteLink將參數作為路徑而不是鍵值對放置?

(這似乎很明顯,我敢肯定有人會告訴我這是一個重復的問題,但是我已經用我知道的每個關鍵字搜索了這個問題,因此如果存在的問題已經存在,我將很樂意從中得到答案)

當控制器內部的方法的參數名稱錯誤時,通常會發生這種情況。

Modules控制器中, View方法應定義為:

View(Guid GUID)

暫無
暫無

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

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