视频地址:
https://www.bilibili.com/video/av38392956/?p=5

这里面就包含了MVC相关的库

可以通过打开右侧的Nuget库进行查看

这里修改下 ,只需要静态文件就可以了

加入mvc的中间件,先使用USeMvcWithDefaultRoute()这里面加了一些默认路由的配置

直接运行页面,提示报错,无法找到所需的服务

注册下mvc的服务

这样就能运行起来。mvc的服务不是手动添加好的,需要自己添加一下

新建Controllers文件夹,然后在下面新建Controller


我们这里从一个类开始,起名叫做HomeController



​​​​​​​4分开始


运行居然返回了 信息。访问跟路径是走到了HomeController里面

所以说使用这个方法就被配置一些默认的路由规则

比如说访问根路径,就会找到HomeController里面的Index方法


按照约定路由
属性标签路由

这就叫做按照约定式配置路由

这里换成UseMVC()。这个方法没有配置默认的路由

并没有走HomeController

在里面配置路由

接收一个参数Action<IrouteBuilder>

在这个莱姆达表达式里就可以配置路由了


可以使用这个builder,这个builder的类型是IRouteBuilder

使用MapRoute配置路由,当然还有很多Map开头的方法

定义参数,这个参数需要用大括号括起来,意思就是告诉框架,url里面的第一部分就是controller的名字

第二个部分是Action

通常都带一个参数,例如这里带个参数id,这个id是可选的,所以在id后面加一个问号

再次运行,输入Home/Index 就看到我们写的返回的字符串数据

设置默认的Controller

之前使用的是UseMvcDefaultRoute可以默认执行Home/index的方法,我们进去看下它的源码是怎么设置的

这里给Controller和action加了默认值

我们直接复制过来,也加上默认值,如果Controller和Action没有就调用默认的值


再次运行可以看到结果了

光输入Controller为home同样可以打开 地址

完整的路径 也没问题

再添加一个类AboutController

里面定义两个方法

然后运行页面
About/me

属性标签式路由

Route属性可以放到Action级别也可以放到Controller的界别

比如说想通过访问/About访问到Me这个action
这么配置的路径就是/About/me

想直接访问到About就能访问me的方法 就留空

运行抛出异常

有多个Action匹配这个路由


再次运行,输入about顺利找到me这个方法


中括号+Controller代表就代表About(也就是这个Controller的名字)

测试下


改名了那么他对应路径也改名了。

输入改名后的Contact才能找到

针对Action,

中括号+Action


这样就使用每个方法名作为他的路径

简写的方式提到最上面

加版本参数

在前面加上V2

路径前面必须带V2才能正常访问

通常mvc选择第一种方式

webapi选择第二种属性标签的配置方式

最新文章

  1. IQueryable&lt;T&gt; 与 ObjectQuery&lt;T&gt; 差异
  2. codeforces589J 简单dfs,队列
  3. yii2.0配置以pathinfo的形式访问
  4. photoshop几个基本技巧
  5. 连接SQLite 创建ADO.net实体类
  6. 我的django之旅(二)模板和静态文件
  7. owa_outlook暴力破解脚本
  8. BZOJ 1337: 最小圆覆盖1336: [Balkan2002]Alien最小圆覆盖(随机增量法)
  9. 【LeetCode】110. Balanced Binary Tree
  10. 2807:两倍-poj
  11. iOS----------面试常问
  12. 关于模拟I2C的一些问题???
  13. 剑指Offer 24. 二叉树中和为某一值的路径 (二叉树)
  14. ASP.NET MVC下使用AngularJs语言(六):获取下拉列表的value和Text
  15. Excel列名和列序号转换
  16. Struts框架核心工作流程与原理
  17. 如何在一个电脑上同时使用两个Git的账号
  18. 【xsy1097】 拼图 构造题
  19. FastReport.Net使用:[10]报表栏目说明
  20. VS和IE或者360兼容模式简单调试js方法

热门文章

  1. 转:使用 SCons 轻松建造程序
  2. Android源代码解析之(三)--&amp;gt;异步任务AsyncTask
  3. react 使用 moment 进行 日期格式化
  4. weex 项目开发(六)weexpack 项目 打包、签名、发布
  5. Ubuntu搭建Android开发环境
  6. [UnityUI]一些有趣的UI样例
  7. 如何卸载centos中自带的Java
  8. HDU 1114 Piggy-Bank (完全背包)
  9. SpringMVC框架下使用jfreechart绘制折线图,柱状图,饼状图
  10. spring中构造函数注入