【发布时间】:2011-09-24 19:08:31
【问题描述】:
我正在开发一个用户要向该站点添加页面的站点,并且我试图使用路由在创建后立即使该页面可用。
例如,用户可能会创建一个 About 页面,现在我在添加页面时将一些逻辑放在控制器中。
if (ModelState.IsValid)
{
context.Pages.Add(page);
context.SaveChanges();
RouteTable.Routes.MapRoute(page.Name, page.Url,
new { controller = "Home", action = "Index", id = UrlParameter.Optional });
return RedirectToAction("Index");
}
但是当我使用 About 作为 url 创建 About 页面然后尝试转到 /About 时,我收到 404 错误。
是否可以在 Application_Start 之外添加路由?
【问题讨论】:
-
你想做什么?你能提供全图吗?您不应该尝试在控制器操作中添加任何路由。有更好的方法来实现您想要实现的任何目标。
-
我正在尝试这样做,因此当有人添加带有 /About 之类的 url 的新页面时,他们可以立即浏览到 /About,它将使用 Home/Index 作为请求的默认路由.
标签: asp.net asp.net-mvc-3 routing