我加入了以下路线页面:的Web API - IgnoreRoute返回奇怪404
// Ignore the alternate path to the home page
routes.IgnoreRoute("Home/Index");
routes.IgnoreRoute("Home");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { id = UrlParameter.Optional }
);
访问:http://localhost:60832/home (请注意HOME是一个已知的控制器,但在路由忽视,如上图所示)
访问:http://localhost:60832/testme 我得到这个404页:
他们为什么如此不同? 为什么返回的页面不一样?
请注意,这是在WebAPI和MVC Web应用程序项目上发生的,其中定义了相同的路由。
它出现在'IgnoreRoute'使得该配置的修改在IIS的水平,而其他通过IIS发送到ASP.NET MVC但随后在MVC路由器内部失败。 –
您是否想在没有路由框架的情况下从浏览器执行控制器,这有可能吗? – Anil
我只是想'关闭''home'' home/index',但后来得到了这种奇怪的行为。 @MichaelPerrenoud - 我的猜测与你的一样,一个被视为静态文件,另一个被视为.NET,但为什么? – Dementic