UseEndpoints和MapControllerRoute关系

在ASP.NET Core中,UseEndpointsMapControllerRoute都是用于配置路由的方法,但它们在应用程序中的不同位置和用途上有一些区别。

  1. UseEndpoints方法:
    • 用途:UseEndpoints方法用于配置应用程序的终结点(endpoints),其中包括路由终结点。终结点是HTTP请求的最终目标,它们确定了请求应该由哪个处理程序处理。
    • 位置:通常,UseEndpoints方法在Startup.cs文件的Configure方法中使用,这是应用程序的请求处理管道的最后一步。
    • 示例:
app.UseEndpoints(endpoints =>
{
    endpoints.MapControllers(); // 配置控制器路由
    endpoints.MapRazorPages(); // 配置Razor页面路由(如果使用Razor页面)
    // 其他终结点配置
});
  1. MapControllerRoute方法:
    • 用途:MapControllerRoute方法用于配置MVC(Model-View-Controller)控制器的路由规则,它指定了控制器和动作方法应该如何映射到URL。
    • 位置:通常,MapControllerRoute方法在Startup.cs文件的ConfigureServices方法中使用,用于配置MVC框架的路由规则。
    • 示例:
services.AddControllersWithViews();
app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");
});

综上所述,UseEndpoints用于配置应用程序的终结点,其中包括控制器路由作为其中的一部分。而MapControllerRoute用于具体配置MVC框架的控制器路由规则。通常情况下,你会在Startup.cs文件的不同方法中使用它们来完成路由的配置工作,从而为应用程序的不同部分分别配置路由。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 .NET 中,UseEndpoints 是 ASP.NET Core 应用程序中的一个中间件,用于将 URL 路由到相应的处理程序。 在 ASP.NET Core 应用程序中,中间件是处理 HTTP 请求和 HTTP 响应的组件。UseEndpoints 是一个中间件,它允许你配置应用程序的 URL 路由规则,并将 HTTP 请求路由到相应的处理程序,例如控制器操作、SignalR hub 方法等。 UseEndpoints 方法通常在 Configure 方法中使用。在 UseEndpoints 方法中,你可以使用 MapControllerRoute 方法来配置控制器的路由规则,也可以使用 MapHub 方法来配置 SignalR hub 的路由规则,还可以使用 MapGet、MapPost、MapPut、MapDelete 等方法来配置其他类型的路由规则。 以下是一个使用 UseEndpoints 方法配置控制器路由的示例代码: ```csharp public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapControllerRoute( name: "default", pattern: "{controller}/{action}/{id?}"); }); } ``` 在上面的代码中,Configure 方法中使用 UseRouting 方法启用路由中间件。然后使用 UseEndpoints 方法配置路由规则,使用 MapControllerRoute 方法指定控制器的默认路由规则。在这个示例中,控制器的 URL 路由规则为 {controller}/{action}/{id?},其中 {controller} 表示控制器名称,{action} 表示控制器操作名称,{id?} 表示可选的参数。 使用 UseEndpoints 方法可以方便地配置应用程序的路由规则,并将 HTTP 请求路由到相应的处理程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值