专栏首页云计算ASP.NET MVC 6路由技术

ASP.NET MVC 6路由技术

在我们跳转到自定义路由之前,我们必须先了解下MVC6基于MVC5的基本变化。 ASP.NET MVC6将所有必要的启动服务,定义和配置的应用程序依赖关系放在一个Startup.cs文件中。 Startup.cs文件替换了放置中间件和配置逻辑的global.asax的所有功能。

正如我们所知的那样,路由的操作使用Routes.MapRoute方法进行管理。在ASP.NET MVC 6Routes.MapRoute中,Startup.cs文件中不在包含这个方法,取而代之的是很少的代码。你同样还会注意到没有专门的配置文件来处理RouteConfig.csWebApiConfig.cs或其他中间处理程序,这些中间处理程序是早期的ASP.NET版本和MVC模式项目模板附带的。 Startup.cs文件具有services.AddMvc()services.UseMvc()方法来处理路由操作。

我们可以看看代码中UseMvc()方法的实现。

UseMvc()

(译者注:图中框选内容为默认路由设置代码)

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

基于属性的路由

我们必须在controller中编写代码来实现基于属性的路由。

controller

基于约定的路由

我们必须在Startup.cs中编写代码来实现基于属性的路由。

Startup.cs

本文的版权归 李郑 所有,如需转载请联系作者。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 在Ubuntu 16.04上安装Seafile并配置Nginx

    Seafile是一个跨平台的文件托管工具,包含了适用于Linux和Windows的服务器应用程序,以及适用于Android,iOS,Linux,OS X和Win...

    Techeek
  • 搭建你的物联网 : Workerman Tcp 服务器

    想不想让家里的设备联网?想不想远程控制家里的空调?单身狗想不想一回家就吃到热腾腾的饭菜?除了购买现成的产品,你还可以这样做哦!

    Techeek
  • 如何利用云优化加快网站访问

    云计算最近成为几乎所有行业的基本业务工具。大多数公司领导人已经注意到云计算及其作用,同时也注意到那些可以优化云计算的方法。总而言之,云计算,曾经的奢侈品如今已经...

    Techeek
  • ASP.NET MVC 6路由技术

    在我们开始学习路由的自定义之前,先看一下MVC6较之于MVC5(在路由配置方面)有哪些变化。 ASP.NET MVC6将所有应用程序所必要的启动服务以及其所定义...

    极大似然
  • 【译】ASP.NET MVC 6路由技术

    原文作者:Pramod Gawande 原文地址:https://dzone.com/articles/aspnet-mvc-6-routing-techniq...

    李郑
  • 2.2.3、Google Analytics高级应用——网站停留时间的计算规则与优化

    在使用一段时间GA,如果您足够细心,您会发现,GA有些页面会来源有用户访问,但是时间是0,如图2-25所示,比如平均会话时长,页面平均时长这些字段都有是0:

    GA小站
  • 数据库中间件分片算法之date

    今天看了一个视频是关于梅西和C罗的,视频的主题是问他们两个是不是朋友?结果可想而知,两个人私底下很较劲,梅西投票从来没投给过C罗,C罗也从来没投过梅西,2个人在...

    BuddyYuan
  • 一个APP启动另一个APP的某个Activity(intent.setComponent()、intent.putExtra()、intent.setFlags()方法)

    一个APP启动另一个APP的某个activity,还包括对intent.setComponent()、intent.putExtra()、intent.setF...

    用户7557625
  • 一行Shell代码查找所有代码行数

    最近写简历, 想算下自己的这个项目一共有多少行代码, 好方便在简历上展示. 本来想着一直用git管理代码, 顺便统计下好了. 结果竟然没有在git中找到单独统计...

    望天
  • sql数据库打包部署安装

    目的:在客户端服务器上”附加数据库文件”。 一).创建部署项目 1. 打开VS.NET2005。 2.在“文件”菜单上指向“新建项目”。 3. 在“新建项目”对...

    阿新

扫码关注云+社区

领取腾讯云代金券