📅  最后修改于: 2023-12-03 15:13:31.835000             🧑  作者: Mango
在 ASP.NET Core 中,默认的路由提供了一种简单且易于使用的方法来定义 Web 应用程序的 URL 结构。本文将介绍 ASP.NET Core 中的默认路由,以及如何使用它来定义 Web 应用程序的 URL 结构。
默认路由由三个主要部分组成:控制器名称、操作名称和参数。默认情况下,这些部分使用以下约定来构建 URL:
"{controller}/{action}/{id?}"
其中,{controller}
表示控制器名称,{action}
表示操作名称,{id?}
表示可选的参数。
例如,如果有一个名为 HomeController
的控制器,其中有一个名为 Index
的操作,则默认路由将生成以下 URL:
/Home/Index
如果 Index
操作需要一个名为 id
的参数,则默认路由将生成以下 URL:
/Home/Index/{id}
要配置默认路由,需要在应用程序的 Startup
类中添加以下代码:
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller}/{action}/{id?}",
defaults: new { controller = "Home", action = "Index" });
});
这将在应用程序中注册默认路由,并将其命名为“default”。如果没有提供控制器和操作名称,则默认控制器将为 Home
,默认操作将为 Index
。
如果需要自定义默认路由,则可以通过指定不同的模式和默认值来实现。例如,要使用另一种模式并更改默认操作,请将以下代码添加到 Startup
类中:
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "myRoute",
pattern: "mycontroller/myaction/{id?}",
defaults: new { controller = "MyController", action = "MyAction" });
});
这将创建一个名为“myRoute”的路由,该路由由 MyController
控制器的 MyAction
操作处理。如果未提供参数,则默认参数为 id
。
ASP.NET Core 中的默认路由提供了一种简单且易于使用的方法来定义 Web 应用程序的 URL 结构。默认路由由三个主要部分组成:控制器名称、操作名称和参数。默认情况下,这些部分使用约定来构建 URL。默认路由可以通过在 Startup
类中配置自定义模式来进行自定义。