test.html文件的路由-MVC返回404

时间:2014-04-28 14:23:42

标签: c# html asp.net-mvc asp.net-mvc-routing

我的目标是用户代理将test.html重新定向到test2.html的重定向请求,我正在使用MVC所以我正在关注this文章

所以在我的/App_Start/RouteConfig.cs中是:

 routes.RouteExistingFiles = true;
 routes.MapRoute(
        name: "Test",
        url: "test.html",
        defaults: new { controller = "Home", action = "Html", page = urlParameter.Optional }
    );

在webconfig中我放置了以下节点:

<add name="HtmlFileHandler" path="test.html" verb="GET" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />

然而,当我在IIS中更改调试设置并请求localhost:96 / test.html时,操作中的断点未命中且未找到404

从我上面链接的文章,我认为我做了一切我也google了很多,这应该是它但它不是..我可能强迫一些错误。任何建议我都会很高兴!如果您认为它将依赖于SW或OS的某些版本,我可以在这里填写

1 个答案:

答案 0 :(得分:0)

在地图路线网址上,明确标识文件的路径:

url: "folder1/folder2/{page}.html

然后尝试在您的控制器上执行此操作:

 public ActionResult StaticPage()
        {
            var name = new Uri(Request.Url.ToString()).Segments.Last();
            return new FilePathResult(name, "text/html");
        }