首頁  >  文章  >  後端開發  >  C# ASP.NET Core 中的路由是什麼?

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

WBOY
WBOY轉載
2023-08-25 22:37:06811瀏覽

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刪除