如何在 asp.net core 中将路由配置与启动分离?

6
我希望你能把路由配置从Asp.Net Core的启动代码中分离出来。在.Net Core中默认情况下:
            app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");
        });

2
你说的“分离”是什么意思?你是想在运行时添加和删除路由,还是只是想让你的路由配置在自己的文件中? - ProgrammingLlama
我想将路由配置文件与启动类分离。 - mostafa mo
1
好的,Amir的答案是正确的 :) - ProgrammingLlama
1个回答

9
您可以使用以下代码:
public static class RouteConfig
{
    public static IRouteBuilder Use(IRouteBuilder routeBuilder)
    {
        //eg sample for defining Custom route
        //routeBuilder.MapRoute("blog", "blog",
        //    defaults: new { controller = "Home", action = "Index" });

        routeBuilder.MapRoute(name: "default",
            template: "{controller=Home}/{action=Index}/{id?}");

        return routeBuilder;
    }
}

在启动和配置方法中:

app.UseMvc(c => RouteConfig.Use(c));

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接