【发布时间】:2015-07-18 09:25:41
【问题描述】:
我想通过该 URL 访问我的 NewsList 路由:http://domain.com/news
我有三个路线,例如:
routes.MapRoute(
name: "NewsList",
url: "News",
defaults: new { controller = "News", action = "List" }
);
routes.MapRoute(
name: "NewsDetail",
url: "{controller}/{action}/{title}/{id}",
defaults: new { controller = "News", action = "Details", title = "", id = 0 }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
我可以毫无问题地使用Default 和NewsDetail 路由,但是在当前配置下,我在下面提供的URL 无法访问NewsList 路由。当我尝试访问NewsList 路由时,我需要使用URL:http://domain.com/news/list。
编辑:如果我使用 http://domain.com/news,我会在屏幕上看到 HTTP Error 403.14 - Forbidden 错误。
这种情况下可以忽略动作吗?
【问题讨论】:
-
当你转到
/news时会发生什么?你所拥有的看起来不错。 -
会发生什么?我看到“HTTP 错误 403.14 - 禁止”
-
好的。这并不意味着您的路线不起作用。你被禁止的原因可能有很多。不过,这里还不足以帮助您。
-
您还需要什么?我的控制器和动作名称与控制器中写的一样。你说它应该有效并且我的 NewsList 路由有效?
-
是的。如果路由无效,您将收到 404 或其他操作。它被禁止的事实意味着它击中了 something,只是有一些其他问题。
标签: asp.net asp.net-mvc asp.net-mvc-routing