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 });