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

如何修改ASP.NET Core Razor Pages启动默认URL与默认页面

解决ASP.NET Core Razor Pages默认启动URL及跳转问题

1. 修改默认启动URL

打开项目根目录下的Properties/launchSettings.json文件,找到对应启动配置的applicationUrl字段,修改为目标地址:

"applicationUrl": "http://localhost:5000/ABC",

修改后启动应用时,浏览器会自动打开http://localhost:5000/ABC。

2. 配置根路径自动跳转至ABC/Index.cshtml

若需实现访问http://localhost:5000/时自动跳转至ABC/Index.cshtml,可通过以下两种方式实现:

方式一:路由约定映射(无显式重定向)

在Program.cs的AddRazorPages配置中,添加路由约定将根路径直接映射到目标页面。如果根目录存在默认的Index.cshtml,需确保自定义路由优先级更高:

builder.Services.AddRazorPages(options =>
{
    // 将根路径""映射到/ABC/Index页面
    options.Conventions.AddPageRoute("/ABC/Index", "");
    // 可选:让/ABC路径也指向该页面
    options.Conventions.AddPageRoute("/ABC/Index", "ABC");
});

方式二:显式重定向规则

在Program.cs的端点配置中,添加根路径的重定向逻辑,无论根目录是否有默认页面,都会强制跳转:

app.UseEndpoints(endpoints =>
{
    endpoints.MapRazorPages();
    // 访问根路径时重定向到ABC/Index
    endpoints.MapGet("/", context =>
    {
        return context.Response.Redirect("/ABC/Index");
    });
});

原配置未生效的原因

  • 根目录下存在Index.cshtml,默认路由会优先匹配该页面,覆盖了自定义路由约定
  • 路由约定未正确覆盖默认规则,导致自定义映射未生效

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 19:01:12