C#WebApi路由机制详解

2023-05-16

随着前后端分离的大热,WebApi在项目中的作用也是越来越重要,可单独部署、与前端和App交互都很方便,既然有良好的发展趋势,我们当然应该顺势而为——搞懂WebApi!Restful相当于给Http请求增加了语义,Post(增)、Delete(删)、Put(改)、Get(查),有时会用Get进行查询,用Post进行增、删、改。

从MVC到WebApi,路由机制一直都在其中扮演着重要的角色。

它可以很简单:如果你只需要会用一些简单的路由,如/Home/Index那么你只需要配置一个默认路由就能搞定。

它可以很神秘:你的url可以千变万化,看到一些“无厘头”的url,很难理解它是如何找到匹配的Action,例如/api/Pleasure/1/detail,这样的url可以让你纠结半天。

它可以很深奥:当面试官提问“请简单分析下MVC路由机制的原理”,你可能事先就准备好了答案,然后劈里啪啦一顿(型如:UrlRoutingMoudle—>Routes—>RouteData—>RequestContext—>Controller),你可能回答的很流利,但并不一定理解这些个对象到底是啥意思。):目前为止我还没能理解透,以后会继续努力的直到弄清楚。

一、MVC和WebApi路由机制比较
1、MVC使用的路由
在MVC中,默认路由机制是通过解析url路径来匹配Action。比如:/User/GetList,这个url就表示匹配User控制器下的GetList方法,这是MVC路由的默认解析方式。为什么默认的解析方式是这样子的呢?因

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C#WebApi路由机制详解 的相关文章

随机推荐

  • C# winform 禁用最小化和还原按钮(消息循环截获处理)

    项目中遇到一些问题 需要根据权限配置去控制用户对系统平台是否可以最小化和还原窗口大小的操作 并且屏蔽系统的一些快捷键 比如 alt 43 F4 windows键 任务管理器等一些操作 代码如下 禁止窗口最小化和还原 窗口启动之后为最大化 偷
  • c#中将HTML文件转换成PDF文件

    一 Pechkin html gt pdf 1 WinForm中转换为PDF a 在项目添加引用 xff0c 引用 gt 管理NuGet程序包 b 在导出PDF按钮中添加方法 1 SynchronizedPechkin sc 61 new
  • c#中一个进程启动另一个进程并传递参数

    1 开启进程 using System Diagnostics ProcessStartInfo process 61 new ProcessStartInfo process FileName 61 34 要开启的进程路径 34 stri
  • Window捕获消息机制及动态创建button-MFC

    PreTranslateMessage 函数捕获键盘按键消息 01 PreTranslateMessage函数 xff0c 常用于屏蔽MFC对话框中默认的Enter和ESC消息 函数原型 xff1a BOOL PreTranslateMes
  • Window捕获消息机制-C#

    C 捕获鼠标消息 在C 中怎样禁用鼠标按键 xff0c 我们可以通过ImessageFilter接口下的PreFilterMessage方法 Application类的AddMessageFilter方法 xff0c RemoveMessa
  • MFC中动态创建控件及添加消息响应的方法实例

    动态控件是指在需要时由Create 创建的控件 xff0c 这与预先在对话框中放置的控件是不同的 一 创建动态控件 xff1a 为了对照 xff0c 我们先来看一下静态控件的创建 放置静态控件时必须先建立一个容器 xff0c 一般是对话框
  • Windows消息ID号查看

    WM NULL 61 0000 WM CREATE 61 0001 应用程序创建一个窗口 WM DESTROY 61 0002 一个窗口被销毁 WM MOVE 61 0003 移动一个窗口 WM SIZE 61 0005 改变一个窗口的大小
  • MFC和c#中模拟对另一进程的窗口按钮点击

    1 在自动化测试中经常要模拟窗口按钮的点击 参考文章 xff1a http blog csdn net blackboyofsnp article details 3372719 有时我们需要这么做 手动模拟按钮按下的事件 让程序做出与按钮
  • C#中进程间通信方式汇总

    一 进程间通讯的方式 进程间通讯的方式有很多 xff0c 常用的有共享内存 xff08 内存映射文件 共享内存DLL 剪切板等 xff09 命名管道和匿名管道 发送消息等几种方法来直接完成 xff0c 另外还可以通过socket口 配置文件
  • ubuntu shared folder to windows

    一 安装smb 执行命令行 xff1a sudo apt get install samba sudo apt get install smbfs 二 添加准备共享的文件夹 有如下三种配置共享文件夹的方法 xff0c 任选一种方法即可 xf
  • C# 获得窗体句柄并发送消息(利用windows API可在不同进程中获取)

    C 使用Windows API获取窗口句柄控制其他程序窗口 编写程序模拟鼠标和键盘操作可以方便的实现你需要的功能 xff0c 而不需要对方程序为你开放接口 比如 xff0c 操作飞信定时发送短信等 我之前开发过飞信耗子 xff0c 用的是对
  • c#中mysql远程连接方法及实例

    region 远程数据库连接测试 需给远程数据库分配所有权限 cmd命令 xff1a grant all privileges on to 39 root 39 64 39 39 with grant option string connS
  • mysql中数据库覆盖导入的几种方式

    众所周知 xff0c 数据库中INSERT INTO语法是append方式的插入 xff0c 而最近在处理一些客户数据导入场景时 xff0c 经常遇到需要覆盖式导入的情况 xff0c 常见的覆盖式导入主要有下面两种 xff1a 1 部分覆盖
  • mysql并发写入性能分析

    目前 xff0c 在很多OLTP场景中 xff0c MySQL数据库都有着广泛的应用 xff0c 也有很多不同的使用方式 从数据库的业务需求 架构设计 运营维护 再到扩容迁移 xff0c 不同的MySQL架构有不同的特点 xff0c 适应一
  • c#中的DefWndProc是Control类的虚函数

    protected override void DefWndProc ref Message m protected override void DefWndProc ref Message m 是Control的虚函数
  • C#使用Win32API获得窗口和控件的句柄

    整个Windows编程的基础 一个句柄是指使用的一个唯一的整数值 即一个4字节 64位程序中为8字节 长的数值 来标识应用程序中的不同对象和同类中的不同的实例 诸如 一个窗口 按钮 图标 滚动条 输出设备 控件或者文件等 应用程序能够通过句
  • C/C++新建注册表项实例

    使用Windows API 函数中的RegCreateKeyEx函数来实现对注册表新建注册表项 RegCreateKeyEx函数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 原形 LONG RegCreateKeyEx
  • c#中通过win32API(FindWindowEx)查找控件句柄实例

    函数功能 该函数获得一个窗口的句柄 该窗口的类名和窗口名与给定的字符串相匹配 这个函数查找子窗口 从排在给定的子窗口后面的下 一个子窗口开始 在查找时不区分大小写 函数原型 HWND FindWindowEx HWND hwndParent
  • c#中使用消息循环机制发送接收字符串的方法和数据类型转换

    在定义消息时忘记了用户可定义消息的边界值 xff0c 在网上一阵疯找后来发现是const int WM USER 61 0x400 接着是SendMessage的lParam类型不能决定 xff08 默认是IntPtr xff09 xff0
  • C#WebApi路由机制详解

    随着前后端分离的大热 WebApi在项目中的作用也是越来越重要 可单独部署 与前端和App交互都很方便 既然有良好的发展趋势 我们当然应该顺势而为 搞懂WebApi Restful相当于给Http请求增加了语义 Post 增 Delete