[英].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.