首页  >  文章  >  后端开发  >  C# ASP.NET Core 中的路由是什么?

C# ASP.NET Core 中的路由是什么?

WBOY
WBOY转载
2023-08-25 22:37:06813浏览

C# ASP.NET Core 中的路由是什么?

路由用于将请求映射到路由处理程序。

路由在应用程序启动时进行配置,并且可以从 将用于请求处理的 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 中的路由是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除