【发布时间】:2014-08-16 09:18:24
【问题描述】:
我有两个控制器,HomeController 和 ResourcesController。 当请求对 HomeController 执行操作时,我想从 url 中隐藏 Home/,但是对于 ResourcesController(或任何其他控制器),我想将控制器名称保留在 url 中。 例如。 /Home/Products 将是 /Produtcs,但 /Resources/Banana 应该保留 /Resources/Banana
这些是我的路线:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "SpecificRoute",
url: "{action}/{id}",
defaults: new { controller = "Home", action = "Home", id = UrlParameter.Optional });
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Home", id = UrlParameter.Optional }
);
它对家庭控制器按预期工作,但对于资源控制器我得到“404...找不到资源”
【问题讨论】:
-
来自一位伟人的一篇较早的博客文章:blog.slaks.net/2011/09/…
标签: asp.net-mvc asp.net-mvc-routing url-routing