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

Visual Studio 2022使用Scaffolding生成视图时遇错误求助

.NET 8 + VS2022 Scaffolding 创建视图/控制器故障排查方案
  • 清理Scaffolding缓存
    关闭VS,删除以下目录的缓存文件:
    %USERPROFILE%\.nuget\packages\microsoft.visualstudio.web.codegenerators.mvc
    %USERPROFILE%\AppData\Local\Temp\VisualStudioWebCodeGeneration
    重新打开项目,尝试重新生成Scaffold。

  • 检查项目文件配置
    确认项目.csproj中是否包含正确的Scaffolding相关包引用,确保版本与.NET 8匹配:

    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="8.0.*" PrivateAssets="all" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="8.0.*" />
    

    保存后右键项目选择「还原NuGet包」。

  • 验证视图模型有效性
    排查视图模型是否存在以下问题:

    • 实体类间的循环引用(未配置忽略规则)
    • 包含抽象类/接口类型的未初始化属性
    • 存在Scaffold无法识别的自定义类型属性(可临时注释该属性后测试)
  • 修复VS安装组件
    打开VS安装器,选择「修改」,点击「修复」按钮,修复VS2022的安装文件,排除组件损坏问题。

  • 尝试命令行Scaffold
    跳过VS UI,用.NET CLI执行Scaffold命令获取更详细错误信息:

    dotnet aspnet-codegenerator controller -name [控制器名] -m [视图模型类名] -dc [DbContext类名] --relativeFolderPath Controllers --viewNames Index,Create,Edit,Delete,Details --useDefaultLayout
    

    查看控制台输出的具体错误提示定位问题。

  • 检查DbContext配置
    确保DbContext已正确注册到DI容器,且连接字符串配置正常——Scaffolding需要访问DbContext读取模型元数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 14:04:51