【发布时间】:2010-12-04 19:28:23
【问题描述】:
(已解决,看@本说明的结尾)
嗨,假设我有那个 URL:
http://mystite.com
然后,我使用HomeController 和Index 操作。
但是,如果 URL 看起来像
http://mystite.com/itemID
itemID是一个字符串,是可选的,那我用MyController和actionViewContent
Global.asax 文件:
routes.MapRoute(
"ViewItemContent",
"{itemID}",
new { controller = "My",
action = "ViewContent",
itemID = UrlParameter.Optional
}
);
问题是,当我使用第一个 URL 时,服务器将其视为第二个 URL(很明显)。那么,如果itemID 参数是NULL,那么如何从MyController 调用HomeController 的Index 操作?
我试过了
return RedirectToAction("Index", "Home");
但它总是将我重定向回 MyController 的 ViewContent 操作
已解决
我通过将 RedirectToAction 方法从MyController 的ViewContent 操作移动到HomeController 的Index 操作解决了这个问题。
我尝试从 MyController 重定向 -> Home 但没有成功。
现在我反转了重定向,从Home -> MyController by
return RedirectToAction("ViewCategory", "Category", new { itemID = itemID });
在这种情况下一切正常:)
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-routing