Asp.net @Url.Action中的子路由
我需要asp.net mvc中有关子路由的帮助。我需要这条路线Asp.net @Url.Action中的子路由,asp.net,asp.net-mvc,routes,Asp.net,Asp.net Mvc,Routes,我需要asp.net mvc中有关子路由的帮助。我需要这条路线 Home/Index/6/Person/Index/8 在我的路线图中,我有这个 routes.MapRoute( name: "Prueba", url: "Home/Index/{id}/Person/{action}/{personId}", defaults: new { controller = "Person", action = "Index", PersonId = UrlParameter
Home/Index/6/Person/Index/8
在我的路线图中,我有这个
routes.MapRoute(
name: "Prueba",
url: "Home/Index/{id}/Person/{action}/{personId}",
defaults: new { controller = "Person", action = "Index", PersonId = UrlParameter.Optional }
);
如果我把这条路线Home/Index/6/Person/Index/8
放在URL浏览器中,它可以工作,但我需要链接
我不知道如何用
@Url.Action(Action,Controller,new{id=Value})创建这个路由你可以使用@Url.Action(“Index”,“Person”,new{id=“6”,personId=“8”})
这将生成所需的字符串,但它将选择符合条件的第一条路由
语法:@Url.Action(“Action Name”,“ControllerName”,new{parameterName=“parameterValue”})
参考:
您可以使用或方法
比如说
@Html.RouteLink("Click me", "Prueba", new { id = 1, personId = 3 })
及
如果您想在路由中指定不同的操作方法,那么它将是例如new{id=1,personId=3,action=“Edit”}
语法:@Url.action(“操作名”,“控制器名”,new{parameterName=“parameterValue”}),在您的例子中:@Url.action(“索引”,“个人”,new{id=“6”,personId=“8”)请注意,personId
参数不是匹配路由所必需的。
@Url.RouteUrl("Prueba", new { id = 1, personId = 3 })