首页 新闻 会员 周边

ASP.NET Core: 如何消除警告「ASP0014: Suggest using top level route registrations」

0
悬赏园豆:30 [已解决问题] 解决于 2026-02-13 10:07

在一个 ASP.NET Core 10 项目中,Program.cs 中下面的代码:

app.UseEndpoints(RouteConfig.Build);

出现编译警告:

ASP0014: Suggest using top level route registrations

请问如果如何消除这个警告?

问题补充:

RouteConfig 对应的实现代码

public static class RouteConfig
{
    public static void Build(IEndpointRouteBuilder routes)
    {
        routes.MapControllerRoute("FeedDefault", string.Empty, new { controller = "Feed", action = "Index" });
        // ...
    }
}
dudu的主页 dudu | 高人七级 | 园豆:23628
提问于:2026-02-13 09:31
<
分享
最佳答案
0

Program 中的 app 类型是 WebApplication,已经实现了 IEndpointRouteBuilder 接口

public sealed class WebApplication : IHost, IApplicationBuilder, IEndpointRouteBuilder, IAsyncDisposable
{
    // ...
}

直接通过 WebApplication 配置路由即可解决

app.ConfigureRoutes();

RouteConfig.Build 重构为 ConfigureRoutes 扩展方法

public static class RouteConfig
{
    extension(IEndpointRouteBuilder routes)
    {
        public IEndpointRouteBuilder ConfigureRoutes()
        {
            routes.MapControllerRoute(
                "FeedDefault",
                string.Empty,
                new { controller = "Feed", action = "Index" });
            return routes;
        }
    }
}
dudu | 高人七级 |园豆:23628 | 2026-02-13 10:05
其他回答(1)
0

我还是第一次晓得 .net core 里面还有这个

收获园豆:30
huiyuanai709 | 园豆:559 (小虾三级) | 2026-02-13 09:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册