ASP.NET MVC 5 入门教程 (3) 路由route
文章来源: Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc-5-get-started-route.html
上一节:ASP.NET MVC 5 入门教程 (2) 控制器Controller
下一节:ASP.NET MVC 5 入门教程 (4) View和ViewBag
源码下载:点我下载
上一节我们讲了如何创建一个控制器,本节我们来讨论如何通过路由来访问控制器及其Action。
那么问题来了,怎么写url能访问到我想要访问的控制器呢?
要想正确访问路由器,就得知道路由规则。它被写在解决方案的App_Start文件夹下的RoutConfig.cs文件中。顾名思义,这是路由配置文件。代码如下。
using System.Web.Mvc; using System.Web.Routing;namespace SlarkInc {public class RouteConfig{public static void RegisterRoutes(RouteCollection routes){routes.IgnoreRoute("{resource}.axd/{*pathInfo}");routes.MapRoute(name: "Default",url: "{controller}/{action}/{id}",defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional });}} }
代码中标记出的两行就是路由规则的关键所在。
第一行的意思是通过 “http://主机名:端口号/控制器名/Action名/参数id” 可以调用这个控制器的Action并且这个Action带有参数id。
我们先来创建一个这样的控制器。
打开解决方案下的Controllers文件夹下的FirstController.cs文件。写入如下代码。
using System.Web.Mvc;namespace SlarkInc.Controllers {public class FirstController : Controller{public string Index(string id){return "This is first controller index page.<br/> Your Id is " + id;}public string Another(){return "This is first controller another page";}} }
代码中标记的部分就是我们想要访问的Action。
按F5启动程序。
我们要访问的是First控制器下的Index Action并且参数是id。
代入公式:“http://主机名:端口号/控制器名/Action名/参数id”
得 http://localhost:57231/first/index/2
结果如下:
Ok。
下面来看RoutConfig.cs文件标记出的第二行。如下:
url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
第二行的意思是如果不写controller那么controller就默认是Home。确定controller之后如果不写action则action就默认是Index。id = UrlParameter.Optional表示id可以有也可以没有。比如调用First控制器的Index Action时就有参数,此时写上id。如果调用First控制器的Another Action,没有参数就不写。
那么url就是这样: http://localhost:57231/first/another
运行结果如下:
现在我想让程序一启动就显示FirstController的Index Action,这样测试起来方便。怎么办?
把FirstController 和Index Action都设成默认就行啦。
url: "{controller}/{action}/{id}", defaults: new { controller = "First", action = "Index", id = UrlParameter.Optional }
运行结果如下。id没给,所以是null,这里就没有Id:
下一步我们就可以着手创建View啦。
下一节:ASP.NET MVC 5 入门教程 (4) View和ViewBag
转载于:https://www.cnblogs.com/slark/p/mvc-5-get-started-route.html
ASP.NET MVC 5 入门教程 (3) 路由route相关推荐
- ASP.NET MVC 5 入门教程 (2) 控制器Controller
原文:ASP.NET MVC 5 入门教程 (2) 控制器Controller 文章来源: Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc-5-get ...
- ASP.NET MVC5 + EF6 入门教程 (5) Model和Entity Framework
文章来源: Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc-5-ef-6-get-started-model.html 上一节:ASP.NET MVC ...
- ASP.NET Core MVC 从入门到精通之路由
随着技术的发展,ASP.NET Core MVC也推出了好长时间,经过不断的版本更新迭代,已经越来越完善,本系列文章主要讲解ASP.NET Core MVC开发B/S系统过程中所涉及到的相关内容,适用 ...
- ASP.NET MVC 5 学习教程:添加控制器
ASP.NET MVC 5 学习教程:添加控制器 原文 ASP.NET MVC 5 学习教程:添加控制器 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控 ...
- ASP.NET MVC 5 入门指南汇总
原文:ASP.NET MVC 5 入门指南汇总 经过前一段时间的翻译和编辑,我们陆续发出12篇ASP.NET MVC 5的入门文章.其中大部分翻译自ASP.NET MVC 5 官方教程,由于本系列文章 ...
- ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解
ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解 原文 ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解 在教程的这一部分,我们将研究一 ...
- [ASP.NET MVC2 系列] ASP.NET MVC 之如何创建自定义路由约束
[ASP.NET MVC2 系列] [ASP.NET MVC2 系列] ASP.Net MVC教程之<在15分钟内用ASP.Net MVC创建一个电影数据库应用程序> ...
- ASP.NET MVC Music Store教程(2):控制器
ASP.NET MVC Music Store教程(2):控制器 转自http://firechun.blog.163.com/blog/static/3180452220110272197830/ ...
- ASP.NET MVC 5 学习教程:添加查询
起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控制器访问模型的数据 生成的代码详解 使用 SQL Se ...
最新文章
- 《人件集》阅读笔记第一篇
- 【导出Excel】Vue实现导出下载Excel文件(blob文件流)--亲测可用
- Python中的注释
- redis 获取服务器信息,StringRedisTemplate获取redis信息
- numpy中newaxis的用法
- linux基础-0.0绝对路径与相对路径
- Java servlet项目里的web.xml
- Jquery mobile 解决IOS9selectli闪退问题
- PHP 二分查找(详细)
- 6个必须掌握的基础配置 - [webpack第一篇]
- Yii2如何使用存取控制过滤器(ACF)
- 红外遥控接收头 的引脚参数
- 聊聊Web 3为什么可以解决数据使用中存在的难题
- 2019春运抢票攻略:凭借单身三十年的手速干死一批黄牛党
- stm32 I2C总线入门笔记
- 单片机常用芯片总结(一)——LCD1602液晶屏
- android窗帘拉开动画,H5+CSS3窗帘拉开收起动画特效源码
- CDH6.3.1安装指南
- gitlab Enter passphrase for key
- 拼多多开店步骤是什么?在拼多多如何开店?