我想将 asp.net mvc 响应移至
http://example.com/emails/list/rob@email.com
使用 RedirectToAction("list", "emails", new { id = "rob@email.com"}); 带你到http://example.com/emails/list?id=rob@email.com。
我究竟做错了什么?
谢谢,
抢
我想将 asp.net mvc 响应移至
http://example.com/emails/list/rob@email.com
使用 RedirectToAction("list", "emails", new { id = "rob@email.com"}); 带你到http://example.com/emails/list?id=rob@email.com。
我究竟做错了什么?
谢谢,
抢
啊-因为默认路由需要'id',所以视图(html)和控制器中的参数必须称为id。
似乎配置错误的路由。Global.asax.cs 中的 RegisterRoutes 方法应如下所示:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Account", action = "Login", id = "" } // Parameter defaults
);
}
在“{controller}/{action}/{id}”行中,{id} 的存在意味着它将被它的值替换。
路由字符串中不存在的任何其他参数将被解码为 ?some_param=value