前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ASP.NET MVC 6路由技术

ASP.NET MVC 6路由技术

作者头像
极大似然
发布2018-01-08 17:05:22
1.9K0
发布2018-01-08 17:05:22

在我们开始学习路由的自定义之前,先看一下MVC6较之于MVC5(在路由配置方面)有哪些变化。 ASP.NET MVC6将所有应用程序所必要的启动服务以及其所定义和配置的依赖关系放在Startup.cs文件中。 Startup.cs文件取代了我们之前(在MVC5中用来)存放中间件和配置逻辑的global.asax文件并实现了其所有功能。

路由活动可以通过Routes.MapRoute方法进行管理。在ASP.NET MVC 6 中,Routes.MapRoute并不是Startup.cs的一部分,这个文件现在只包含很少的代码。你还会发现在MVC6中没有专门的配置文件来处理RouteConfig.csWebApiConfig.cs或其他中间处理程序,这些中间处理程序在早期的ASP.NET版本和MVC项目模板中是附带的。Startup.cs文件中存在services.AddMvc()services.UseMvc()两个方法来处理路由活动。

我们从代码看一下UseMvc()方法的是如何进行实现的。

UseMvc()方法的实现
UseMvc()方法的实现

我们可以使用基于属性(Attribute Based)基于约定(Convention Based)的方法来添加我们自己的路由。我自己通常同时使用这两种方法,因为如果一起使用这两种方法的话,基于属性的路由会覆盖基于约定的路由。而这两个路由都会覆盖由UseMvc()方法定义的默认路由。

基于属性的路由

控制器中编写代码来实现基于属性的路由。

基于属性的路由实现
基于属性的路由实现

基于约定的路由

Startup.cs中编写代码来实现基于属性的路由。

基于约定的路由实现
基于约定的路由实现
评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基于属性的路由
  • 基于约定的路由
相关产品与服务
消息队列 TDMQ
消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档