RedirectToAction方法提供了5个重载方法
1、单纯跳转,不带参数。
string redirectUrl = "/List" ;
return RedirectToAction(redirectUrl);
2、碰到需要传参的需求,想取原来参数传过去
1)、刚开始简单的这样拼接;
string redirectUrl = "/List?planid=" + Request.Params["hdplanid"];
return RedirectToAction(redirectUrl);
结果报错,并且浏览器中明显示乱码。
2)用 RedirectToAction 的另一个重载方法,参数直接在后面new,
string redirectUrl = "/List" ;
return RedirectToAction(redirectUrl, new
{
planid= Request.Params["hdplanid"]
}
跳转成功,且参照自动拼接到url后面。
but,下面的代码有问题,跳转时不会是:url?id=''这种形式。
return RedirectToAction(url, new
{
id = dto.ID
});
参数不能是“id”,如果是传id,可以改个名字,否则会出现
解决方案:参数名改下。如id-->oid。
return RedirectToAction(url, new
{
oid = dto.ID
});