路由用于将请求映射到路由处理程序。
路由在应用程序启动时进行配置,并且可以从 将用于请求处理的 URL。
路由基础知识
路由使用路由(IRouter 的实现)
- 映射传入请求路由处理程序
- 生成响应中使用的 URL
路由通过 RouterMiddleware 类连接到中间件管道。 ASP.NET MVC 将路由添加到中间件管道作为其配置的一部分
URL 匹配
传入请求进入调用 RouteAsync 方法的 RouterMiddleware
IRouter 实例通过设置 非空 RequestDelegate 的 RouteContext 处理程序。
如果处理程序设置了路由,它将被调用来处理请求,并且不会进一步 路由将被处理。
如果所有路由都被执行,并且没有找到请求的处理程序,中间件将调用 next 和请求管道中的下一个中间件被调用。
URL 生成
URL 生成遵循类似的迭代过程,但从用户或框架开始 调用路由集合的 GetVirtualPath 方法的代码。
然后,每个路由都会按顺序调用其 GetVirtualPath 方法,直到 返回非空 VirtualPathData
创建路由
Routing 提供 Route 类作为 IRouter 的标准实现。 路由使用路由模板语法来定义将与 调用 RouteAsync 时的 URL 路径。
当 GetVirtualPath 为时,Route 将使用相同的路由模板生成 URL 调用。
示例
routes.MapRoute(name: "default", template: "{controller=Home}/{action=Index}/{id?}");
该框架提供了一组用于创建路由的扩展方法,例如 -
MapRoute MapGet MapPost MapPut MapRoute MapVerb
以上就是C# ASP.NET Core 中的路由是什么?的详细内容,更多请关注编程之家其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。