ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 在 ASP.NET MVC 中使用带后缀的 URL

在 ASP.NET MVC 中使用带后缀的 URL

原创 Linux操作系统 作者:iDotNetSpace 时间:2009-07-07 13:01:17 0 删除 编辑

本文介绍如何通过设置Route使URL中带后缀。
在 ASP.NET WebForm中不少人做过通过Url重写使Url中不带后缀,这次我们做的正好相反。假设我们需要将URL后缀设置成shtml,以新建ASP.NET MVC项目时默认的项目为例。如果要访问登陆页,则URL为http://localhost/Account/Login,Account匹配Account Controller,Login匹配Login Action。如果我们要将URL改为http://localhost/Account/Login.shtml,在不改变Route的情况下Action变成了Login.shtml,显然无法找到这个Action,所以就出现了404错误,我们要做的就是将Action仍然解析为Login,所以我们将默认的Route改成

1 routes.MapRoute(
2                 "Default",
3                 "{controller}/{action}.shtml"
4                 new { controller = "Home", action = "Index", id = "" }
此时,Login.shtml中的login正好对应{action}所以就会调用Account controller中的login action,也就达到了我们的目的。如果要使用其他后缀,只需要将.shtml改为.aspx或.html即可。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639172/viewspace-608503/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    2376
  • 访问量
    5297056