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

.NET Core 6 API项目添加默认Razor首页空白问题求助

.NET Core 6 API项目添加Razor首页空白问题解决办法

别把index.cshtml扔到wwwroot里!Razor Pages是动态编译的页面,不是静态文件,默认得放在项目根目录的Pages文件夹下,这是第一个坑。接下来按这几步改:

  1. 调整文件位置与基础配置

    • 在项目根目录新建Pages文件夹
    • 把你的index.cshtml移进去,确保文件顶行保留@page "/"
    • 在Pages里新建_ViewImports.cshtml,内容写:
      @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
      

    (要是不需要布局页,再建个_ViewStart.cshtml,里面写@{ Layout = null; }就行)

  2. 注册Razor Pages服务
    打开Program.cs,在注册控制器服务的地方,加上Razor Pages的服务注册:

    builder.Services.AddControllers();
    // 加这行,让项目知道要处理Razor Pages
    builder.Services.AddRazorPages();
    
  3. 配置中间件路由
    还是在Program.cs的中间件部分,在MapControllers()之后(或前后都行,只要在UseAuthorization()之后)加上路由映射:

    app.UseAuthorization();
    
    app.MapControllers();
    // 加这行,映射Razor Pages的路由规则
    app.MapRazorPages();
    
  4. 静态文件配置(可选)
    之前的自定义静态文件配置可以保留,也可以直接用默认的app.UseStaticFiles()——默认已经指向wwwroot,不影响Razor Pages运行。

做完这些再启动项目,浏览器就能正常加载你的Razor首页了。核心问题就是API模板默认没启用Razor Pages的服务和路由,而且你把页面放错了位置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 17:23:17