网站要求设置静态的,为了完成需求,而且更简单的做法就是设置伪静态,例如:http://localhost:20771/Account/Login.html ,也可以访问http://localhost:20771/Account/Login 这是比较简单省力的一个办法,如果每个页面都是生成一个静态,访问速度是提高了,可代码量就增加,我们就可以利用mvc4的路由设置伪静态

QQ截图20151008171102.png


        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

           
            routes.MapRoute(
               "Action1Html", // action伪静态  
               "{controller}/{action}.html",// 带有参数的 URL  
               new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值  
           );
            routes.MapRoute(
               "IDHtml", // id伪静态  
               "{controller}/{action}/{id}.html",// 带有参数的 URL  
               new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值  
           );

            routes.MapRoute(
                "ActionHtml", // action伪静态  
                "{controller}/{action}.html/{id}",// 带有参数的 URL  
                new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值  
            );

            routes.MapRoute(
                "ControllerHtml", // controller伪静态  
                "{controller}.html/{action}/{id}",// 带有参数的 URL  
                new { controller = "Home", action = "Index", id = UrlParameter.Optional }// 参数默认值  
            );
            routes.MapRoute(
               "Root",
               "",
               new { controller = "Home", action = "Index", id = UrlParameter.Optional });//根目录匹配  

            routes.MapRoute(
               name: "Default",
               url: "{controller}/{action}/{id}",
               defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }//默认配置
           );
        }



还不足够,还需要在webconfig配置:

 <modules runAllManagedModulesForAllRequests="true"></modules>

6608272690631519279.jpg