【发布时间】:2011-02-18 06:53:11
【问题描述】:
我在 IIS7 下使用集成管道通过以下路线设置了 ASP.Net MVC 2 站点:
routes.MapRoute(
"MyRoute",
"mycontroller/{name}/{*path}",
new { controller = "MyController", action = "Index", path = UrlParameter.Optional }
);
此路由之上没有其他路由,但每当我尝试使用具有.svc 扩展名的路径值访问上述路由时,例如:
http://localhost/MyVirtualDirectory/mycontroller/test/somepath.svc
ASP.Net 在不执行我的控制器的情况下返回 404 错误(我在操作方法的开头有一个日志消息调用)。如果我将扩展名更改为良性(如 .txt),它可以完美运行,所以似乎 ASP.Net 的某处将请求解释为对 Web 服务的标准 ASP.Net 调用不存在 - 这绝对是 ASP.Net 404 响应(不是 IIS 响应)。
什么可能导致这种情况,我该如何阻止它发生?
【问题讨论】:
标签: asp.net-mvc iis-7