ASP.NET Core 8.0 Razor Pages中{application}.styles.css 404问题求助
问题根源与解决方案
你的核心问题是**{application}是占位符,未替换为实际的项目程序集名称**,导致浏览器请求了不存在的文件路径,返回404错误。以下是具体修复步骤:
1. 替换硬编码的占位符
在_Layout.cshtml的CSS引用中,{application}需要替换为你的项目名称(即程序集名称)。比如你的项目名为MyRazorApp,修改后代码如下:
<link rel="stylesheet" href="~/MyRazorApp.styles.css" asp-append-version="true" />
也可以用动态获取的方式避免硬编码,先注入环境变量再引用:
@inject IWebHostEnvironment WebHostEnvironment <link rel="stylesheet" href="~/@WebHostEnvironment.ApplicationName.styles.css" asp-append-version="true" />
2. 确认CSS隔离配置(默认已启用)
.NET 8 Razor Pages默认启用CSS隔离,若项目被修改过,可检查.csproj文件确保包含以下配置:
<PropertyGroup> <EnableCssIsolation>true</EnableCssIsolation> </PropertyGroup>
3. 确保静态文件中间件已启用
在Program.cs中必须添加静态文件中间件,否则无法访问生成的隔离CSS文件:
var app = builder.Build(); // 确保该行存在且在路由配置之前 app.UseStaticFiles(); // 其他中间件配置 app.UseRouting(); app.MapRazorPages(); app.Run();
4. 清理重建项目
编译缓存可能导致生成的CSS文件异常,执行以下操作:
- 删除项目根目录下的
bin和obj文件夹 - 在Visual Studio中依次点击「清理解决方案」「生成解决方案」
- 重新运行项目
内容的提问来源于stack exchange,提问作者Flipps
相关产品推荐
相关产品推荐

