点击这里给我发消息 点击这里给我发消息

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

添加时间:2010-1-5
    相关阅读: ASP ASP.NET VC 项目

在 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改成

1routes.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即可

本文作者:未知
咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册