【发布时间】:2014-11-17 13:19:56
【问题描述】:
当我尝试使用 RedirectToRoute() 进行重定向时,它不适用于特定情况的默认路由。根据 RouteConfig.cs,只要它识别出一个带有美食的 URL,它的优先级就是美食。我想在访问美食控制器时在特定场景中使用默认路由。它应该重定向到美食控制器中的 Redirect 操作。是否可以?。
代码sn-p:
RouteConfig.cs
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Cuisine",
"cuisine/{name}",
new { controller = "Cuisine", action = "Search", name = UrlParameter.Optional });
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
CuisineController.cs
public class CuisineController : Controller
{
// GET: Cuisine
public ActionResult Search(string name)
{
return RedirectToRoute("Default", new { controller = "Cuisine", action = "Redirect" });
}
public ActionResult Redirect()
{
return Content("Restaurant Closed");
}
}
【问题讨论】:
标签: c# asp.net-mvc-4 redirect