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

ASP.NET Core集成Identity后编译报错:找不到ShowRecoveryCodesModel类型

解决ASP.NET Core集成Identity后ShowRecoveryCodesModel找不到的编译错误

检查命名空间与using指令

  • 确认ShowRecoveryCodes.cshtml.cs的命名空间和项目其他Identity页面保持一致,比如统一使用Areas.Identity.Pages.Account.Manage。
  • 打开ShowRecoveryCodes.cshtml,检查顶部是否添加了对应命名空间的@using指令,或者@model声明是否能通过完整命名空间找到模型类(如@model YourProjectNamespace.Areas.Identity.Pages.Account.Manage.ShowRecoveryCodesModel)。

重新生成Identity脚手架页面

  • 删除Areas/Identity/Pages/Account/Manage下的ShowRecoveryCodes.cshtml和ShowRecoveryCodes.cshtml.cs文件。
  • 通过ASP.NET Core脚手架重新生成该页面:
    • 在终端执行:dotnet aspnet-codegenerator identity -dc YourDbContextName --files Account.Manage.ShowRecoveryCodes(替换YourDbContextName为项目中实际的Identity上下文类名)
    • 或在Visual Studio中通过「添加->新建项->Identity->选择"Account.Manage.ShowRecoveryCodes"」重新生成,生成时指定正确的DbContext。

清理项目并排查依赖

  • 删除项目根目录下的bin和obj文件夹,执行dotnet clean后再运行dotnet build重新编译。
  • 检查项目.csproj文件,确保Microsoft.AspNetCore.Identity.EntityFrameworkCore、Microsoft.AspNetCore.Identity.UI、Microsoft.VisualStudio.Web.CodeGenerators.Mvc的版本与.NET SDK版本匹配(比如.NET 8对应8.x.x版本),避免版本不兼容导致代码生成异常。

排查自动生成文件的命名空间问题

  • 临时打开错误提示的.g.cs文件,查看它引用的命名空间是否与ShowRecoveryCodesModel实际所在命名空间一致。如果不一致,说明脚手架生成时配置有误,需按第二步重新生成页面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 11:40:59