在Startup中配置

默认路由是这个,并不包含区域路由

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

IRouteBuilder有个扩展类MvcAreaRouteBuilderExtensions用于添加路由,这点类似于asp.net mvc,唯一让我觉得蛋疼的是必须要在控制器上添加特性Area

                routes.MapAreaRoute(
                    name: "systemArea",
                    areaName: "System",
                    template: "System/{controller=User}/{action=index}");
    [Area("System")]
    public class UserController : Controller
    {
        public IActionResult Index()
        {
            return View();
        }
    }

当然还有一种全局配置方式,个人觉得这样不太好,因为每个区域的默认加载控制器可能是不一样的

                routes.MapRoute(name: "areaRoute",
                    template: "{area:exists}/{controller=Home}/{action=Index}/{id?}");


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

 

相关文章:

  • 2021-07-30
  • 2021-09-02
  • 2021-10-13
  • 2022-12-23
  • 2021-10-10
  • 2022-03-06
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-09-06
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-28
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案