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

ASP.NET Core 3.0迁移警告:RazorViewAttribute已过时求助

解决ASP.NET Core 3.0迁移后RazorViewAttribute过时警告的方案

我之前帮朋友处理过几乎一模一样的问题,你这种情况大概率是项目配置里还残留着ASP.NET Core 3.0之前的Razor编译相关设置,导致生成的临时.g.cs文件里仍在使用过时的RazorViewAttribute。给你几个实用的排查和解决方向:

  • 检查项目.csproj文件,看看有没有类似<RazorCompileOnBuild>true</RazorCompileOnBuild>或者<RazorCompileOnPublish>true</RazorCompileOnPublish>的旧配置项。ASP.NET Core 3.0启用了全新的Razor编译系统,这些旧属性会触发传统生成逻辑,直接删掉它们就行。
  • 排查NuGet包引用,如果你还安装了Microsoft.AspNetCore.Mvc.Razor.ViewCompilation这个包,赶紧卸载掉——ASP.NET Core 3.0开始,视图编译功能已经内置到框架里,不需要单独引用这个包了。
  • 彻底清理编译缓存:别只删obj文件夹,把bin文件夹也一并删掉,然后在命令行里执行dotnet clean命令,再重新运行dotnet build。有时候残留的旧编译文件会顽固地引发警告。
  • 最后可以排查下有没有非官方的第三方Razor扩展包,极少数情况这类依赖可能还在调用旧API,不过你新建空项目没问题,这个概率相对低一些。

要是以上方法都没用,你可以把.csproj里的配置(去掉敏感信息)贴出来,应该能快速定位到问题根源。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:00:23