Asp.net 重定向到不带查询字符串的路由
如何重定向到路由而不在URL上获取查询字符串 路由配置Asp.net 重定向到不带查询字符串的路由,asp.net,asp.net-mvc-4,redirect,routing,asp.net-mvc-routing,Asp.net,Asp.net Mvc 4,Redirect,Routing,Asp.net Mvc Routing,如何重定向到路由而不在URL上获取查询字符串 路由配置 routes.MapRoute( name: "ApplicationStatus", url: "join/ApplicationStatus/{applicationKey}/{characterId}", defaults: new { controller = "Join", action = "ApplicationStatus" } ); 要重定向的控制器代码 return RedirectTo
routes.MapRoute(
name: "ApplicationStatus",
url: "join/ApplicationStatus/{applicationKey}/{characterId}",
defaults: new { controller = "Join", action = "ApplicationStatus" }
);
要重定向的控制器代码
return RedirectToAction("ApplicationStatus", new {
applicationKey = applicationKey,
characterId =_sm.JoinState.CharacterId
});
控制器动作方法
public ActionResult ApplicationStatus(string applicationKey, long characterId)
{
return View(new ApplicationStatus());
}
因此,当我从控制器重定向时,浏览器会给我以下url
http://localhost/TestApp/Join/ApplicationStatus?applicationKey=xxxxxxx&characterId=nnnnnnnn
但是我想得到这个
http://localhost/TestApp/Join/ApplicationStatus/xxxxxxx/nnnnnnnn
提前感谢。您应该使用
重定向路由
试试这个
return RedirectToRoute("ApplicationStatus", new {
applicationKey = applicationKey,
characterId =_sm.JoinState.CharacterId
});