我有以下路线
routes.MapRoute("CreateBook", "{controller}/{action}/{slug}/{name}", new { controller = "CreateBook", action = "Index" , slug = UrlParameter.Optional, name = UrlParameter.Optional});
出于某种原因,每当我调用RedirectToAction时,URL都显示为
返回RedirectToAction(“参数”,新{slug = 1234,name =“helloworld”});
http://localhost/CreateBook/Parameters?slug=1234?name=helloworld
我想要的是
http://localhost/CreateBook/Parameters/1234/helloworld
我如何实现这一目标?
答案 0 :(得分:3)
我的猜测是,RedirectToAction
来电正在接收默认路线,而非您的专用路线。
默认情况下,当您传入路由值时,MVC会将值附加为查询字符串参数。
您是否在默认路线之前放置了路线?