ASP.NET MVC实践系列-UrlRouting
来源:互联网 发布:h3c路由器端口设置 编辑:程序博客网 时间:2024/05/18 03:51
ASP.NET MVC 包含了一个强大的URL路由引擎,它允许我们自定义选择使用哪个控制器类,根据不同的参数来控制调用哪个action方法。ASP.NET MVC 中有一套默认的规则来简化控制类以及action方法的调用,如果不了解这个默认规则,在使用中比较容易让人迷惑,我们结合ASP.NET MVC模板来简单了解一下这些默认规则。当我们根据ASP.NET MVC的模板创建一个ASP.NET MVC应用时,我们可以在Global.asax文件中找到以下代码:
public static void RegisterRoutes(RouteCollection routes) { //定义要忽略的路由 routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); //定义映射路由 routes.MapRoute( "Default", // Route name 路由名称必须唯一 "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = "" } // Parameter defaults ); } protected void Application_Start() { RegisterRoutes(RouteTable.Routes); }
我们知道Application_Start是在第一个请求访问网站之前就被调用的,所以这个例子中的网站启动的就已经注册了一个路由网站系统中
routes.MapRoute("Default", "{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = "" } );方法的第一个参数是路由的名字,暂时用不到,假如映射多个路由的时候名字不能重复,第二个参数是Url的格式,第三个参数是个匿名对象,这个匿名对象所表达的是按照第二个参数格式所对应的默认的controller和action以及id是什么,这里我们用一个表格进一步解释一下:
URLControler类Action方法输入参数/Home/Index/5HomeControllerIndex(int id)5/Home/Edit/5HomeControllerEdit(int id)5/Home/IndexHomeControllerIndex()无/HomeHomeControllerIndex()无/HomeControllerIndex()无观察这个表格我们可以发如果我们输入:http//localhost:4804/Home/Index/5地址,那么路由会调用HomeController的Index(5)的方法,而当输入的地址为http//localhost:4804时,路由会根据匿名对象new { controller = "Home", action = "Index", id = "" }中的默认值来选取相应的Controller和action。
http://www.cnblogs.com/nuaalfm/archive/2009/10/26/1589802.html
- ASP.NET MVC实践系列-UrlRouting
- ASP.NET MVC系列:UrlRouting
- Asp.net Mvc 重点教程一周年版 第二回 UrlRouting
- ASP.NET MVC 重点教程一周年版 第二回 UrlRouting
- Asp.Net 4.0 SEO增强之 UrlRouting
- Asp.Net 4.0 SEO增强之 UrlRouting
- Asp.Net 4.0 SEO增强之 UrlRouting
- ASP.NET MVC 实践系列4-Ajax应用
- ASP.NET MVC 学习实践
- MSDN Webcast 系列课程之《ASP.NET MVC 3 开发实践系列课程》
- Asp.net Mvc Framework 系列
- Asp.net Mvc Framework 系列
- ASP.NET MVC Framework 系列
- Asp.net Mvc Framework 系列
- ASP.NET MVC Framework 系列
- ASP.NET MVC 系列文章
- ASP.NET MVC Framework 系列
- ASP.NET MVC系列:Area
- How to Become a Software Architect
- 并发和竞态
- 去除Chrome浏览器文本框边缘的黄线
- 手机游戏开发应重点考虑玩家的时间表
- eclipse企业开发 常用插件
- ASP.NET MVC实践系列-UrlRouting
- 横竖屏切换时候Activity的生命周期
- 只是一个段落
- 常用ARM汇编指令及ATPCS规则
- 使用CodeIgniter来调用淘宝SDK数据进行PHP开发
- 通过window.attachEvent来监听事件
- DOM ready事件绑定” 在 “异步加载” 中暴露的问题及解决方案(精华帖)
- PKU 2352 Stars 求比较小的数字个数
- 为Android应用增加渠道信息 自动化不同渠道的打包过程