【发布时间】:2009-06-16 22:56:00
【问题描述】:
还有其他人遇到过这个问题吗?我一定是做错了什么。
所以我正在为这样的错误设置路由:
routes.MapRoute
(
"SharedError",
"Shared/Error/{error}",
new { error = "" }
);
然后像这样调用:
return parentController.RedirectToRoute("SharedError", new RouteValueDictionary(new { error = errorMessage.ToString() }));
在控制器上:
public ActionResult Error(String error)
简单吧?好吧,当它实际运行时,尽管 url 看起来像这样,但错误为 null:
/共享/错误/ThisIsTheError
但是Error方法中的error参数为null。 (是的,我尝试过其他词)
现在,如果我用“id”这个词替换所有这些,一切正常。
Global.asax.cs
routes.MapRoute
(
"SharedError",
"Shared/Error/{id}",
new { id = "" }
);
重定向:
return parentController.RedirectToRoute("SharedError", new RouteValueDictionary(new { id = errorMessage.ToString() }));
共享控制器:
public ActionResult Error(String id)
如果你有一个默认路由接受一个值,id 是所有路由都必须有的词吗?
【问题讨论】:
标签: asp.net-mvc routes