RedirectToAction - 无限循环

时间:2013-02-08 19:05:05

标签: asp.net-mvc-3

如果网址包含错误数据,我会收到无限循环。

此网址要求查看与ID相关的列表,但提供错误的ID

<siteroot>/<client>/Class/Index/-1

我检测到错误的ID并执行RedirectToAction("Index"),而没有ID,应该显示通用列表。但是当路由重定向时,坏ID仍然存在!

请注意,对于Index方法public ActionResult Index(int? id, int? yid)

,ID是可选的

谢谢, 埃里克

1 个答案:

答案 0 :(得分:1)

在重定向

中显式传递id的空值
 int? badId = null;
 return RedirectToAction("Index", new {id = badId});

您无法直接在匿名路由值对象中分配id = null,因此您需要前一行将id设置为null。我不知道yid是什么,但您可能需要明确地设置它,以免错误的id落入该参数。