我基本上有一个开箱即用的 MVC 5.2 应用程序,启用了基于属性的路由(routes.MapMvcAttributeRoutes();
从提供的RouteConfig.RegisterRoutes(RouteCollection routes)
方法调用)。
以下是在 HomeController 中:
[Route("hello.txt")]
[Route("hellotxt-testing")]
public ActionResult ShowFile()
{
return Content("Hello world");
}
我可以成功访问/hellotxt-testing
(证明基于属性的路由工作正常):
但是如果我访问,我会得到一个 404 页面/hello.txt
:
与我去的时候相比/hello404
,我得到一个不同的 404 页面:
我猜第二个 404 页面来自 ASP.NET,而第一个来自 IIS,它甚至没有将请求传递给 ASP.NET?
我该怎么做才能确保我可以确保 ASP.NET 获得这些带有句点的 URL?是否还有其他“特殊”字符也会导致问题?