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

.NET 5下ASP.NET Core MVC如何设置StaffAug区域Login/Index为默认页

将StaffAug区域下Login/Index设为ASP.NET Core MVC 5站点默认页的方法

前置检查

首先确认项目已经正确注册了StaffAug区域路由,打开Startup.cs的Configure方法,确保UseEndpoints配置块中已添加区域路由映射:

app.UseEndpoints(endpoints =>
{
    // 先注册区域路由
    endpoints.MapAreaControllerRoute(
        name: "StaffAug",
        areaName: "StaffAug",
        pattern: "StaffAug/{controller=Home}/{action=Index}/{id?}");
    
    // 原有默认路由
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");
});

如果没有上述的MapAreaControllerRoute配置,请先补充。

方案1:修改全局默认路由(最直接,推荐)

直接修改默认路由的参数默认值,指定默认匹配的区域、控制器、动作,把原有默认路由修改为:

endpoints.MapControllerRoute(
    name: "default",
    pattern: "{controller=Login}/{action=Index}/{id?}",
    defaults: new { area = "StaffAug" });

修改后访问站点根路径时,会自动匹配到StaffAug区域下的Login控制器的Index动作。

方案2:根路径重定向(不修改全局默认路由,适合同时存在非区域控制器的场景)

如果不想修改全局默认路由避免影响其他非区域的控制器路由,可以添加专门的根路径重定向规则,在UseEndpoints配置块最前面添加以下代码:

endpoints.MapGet("/", async context =>
{
    context.Response.Redirect("/StaffAug/Login/Index");
    await Task.CompletedTask;
});

验证注意事项

  • 确认Areas/StaffAug/Controllers/目录下存在LoginController.cs,且包含无参数的public IActionResult Index()动作方法
  • 确认视图文件路径为Areas/StaffAug/Views/Login/Index.cshtml
  • 如果站点启用了身份验证中间件,请确认Login/Index允许匿名访问,避免出现循环重定向问题

内容的提问来源于stack exchange,提问作者Mohan Raju

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 17:06:03