0
我的默认路由非常简单,但如果没有完全限定整个路由,页面无法正确加载。默认路由不能在.NET MVC 1(和2)中工作
下面是我使用的路线:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index" } // Parameter defaults
);
下面是在应用程序的唯一操作中的HomeController:
public ActionResult Index()
{
return Content("New stuff");
}
具有以下网址:
http://localhost:8081/NewMvc1/
我获得The incoming request does not match any route.
有了:
http://localhost:8081/NewMvc1/Home
http://localhost:8081/NewMvc1/Home/Index
我得到一个404页的mvc,上面写着它试图处理与静态文件的请求。
然而,最后用一个“完全合格的URL”
http://localhost:8081/NewMvc1/Home/Index/1
我从一个只有一个动作结果输出的预期。
New Stuff
这似乎并不正确。我也一直无法从这个相同的应用程序执行操作(不知道这是相关的)。
我已经使用了Phil Haack的RouteDebugger来实现这个目标,它指出当可选参数丢失时它不匹配URL,但是当提供这些参数时它没有匹配URL。