You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET Core 6.0 区域路由正常但根控制器路由失效问题排查

区域与根控制器路由冲突的解决方法

你需要同时配置两条路由规则,分别处理区域请求和根目录请求,且区域路由要优先定义:

// 匹配带区域的请求
app.MapControllerRoute(
    name: "area",
    pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}");

// 匹配根目录下的请求
app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");

关键检查项:

  • 区域内的控制器必须添加[Area("区域名称")]特性,示例:
    [Area("Admin")]
    public class HomeController : Controller
    {
        // 控制器逻辑
    }
    
  • 根目录下的控制器不能添加[Area]特性,确保它归属于默认路由范围。
  • 对比你那3个正常项目,检查新建项目的区域文件夹结构是否符合规范(如Areas/[区域名]/Controllers/),以及控制器特性是否正确添加。

内容的提问来源于stack exchange,提问作者Abhijeet Patil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 02:13:12