日期:2014-05-17  浏览次数:20387 次

MVC2 如何实现伪静态 .html
公司是开发门户网站的,为了SEO的优化工作,项目是使用MVC2开发的,现在访问页面需要将路径给我.html的样子。怎么实现?

------解决方案--------------------
routes.MapRoute(
"Default", // 路由名称
"{controller}/{action}.html", // 带有参数的 URL
new { controller = "Home", action = "Index" } // 参数默认值
);

MVC路由
------解决方案--------------------
请搜索“MVC路由”
这个在路由里面配置就可以了
Global这个文件中


不过还需要html么?一样收录吧
------解决方案--------------------
探讨

routes.MapRoute(
"Default", // 路由名称
"{controller}/{action}.html", // 带有参数的 URL
new { controller = "Home", action = "Index" } // 参数默认值
)……

------解决方案--------------------
"{controller}/{action}.html/{id}"
------解决方案--------------------
还可以自己写一个解析路由规则,
routes.Add(new MyRoute(true, hashtable));//注册伪静态
------解决方案--------------------
mvc的url本身就是“伪静态”啊,只不过默认是以“目录”的形式。当然,改成.html形式也是可以的。
------解决方案--------------------
这个是全套的
C# code

 routes.MapRoute("NoAction", "{controller}.html", new { controller = "home", action = "index", id = "" });//无Action的匹配
            routes.MapRoute("NoID", "{controller}/{action}.html", new { controller = "home", action = "index", id = "" });//无ID的匹配
            routes.MapRoute("Default", "{controller}/{action}/{id}.html", new { controller = "home", action = "index", id = "" });//默认匹配
            routes.MapRoute("Root", "", new { controller = "home", action = "index", id = "" });//根目录匹配

------解决方案--------------------
没加过当然404