[英]MVC5 routing in c#
我在配置路由时遇到问题。 我的routeconfig如下:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}",
defaults: new { controller = "Somepage", action = "Index", id = UrlParameter.Optional }
);
现在,我有两个控制器Sompage和Somepage2,还有两个视图文件夹Somepage和Somepage2。 在我的layout.cshtml中,我具有指向Somepage和Somepage2的链接。 指向Somepage的链接可以正常工作,但是无法渲染到Somepage2的链接。 布局文件中的链接是
@Html.ActionLink("some page on somepage2", "somepageonsomepage2", "Somepage2", new { target = "_blank" })
当我单击此链接时,当我想转到localhost / Somepage2 / somepageonsomepage2时,它会尝试将我带到localhost / Somepage / somepageonsomepage2
我不确定我要去哪里错。
您需要使用正确的ActionLink
重载来指定控制器。 默认情况下,动作链接的控制器将是视图的控制器。 因此,如果您有控制器HomeController
并在文件夹Home
查看Index
,则操作链接的默认控制器将为HomeController
@Html.ActionLink("some page on somepage2", "somepageonsomepage2", "Somepage2", null, new { target = "_blank" })
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.