mvc4设置伪静态

版权所有,禁止匿名转载;禁止商业使用。

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

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配置:

6.jpg


  • 分类:C#
  • 标签:
0 0