.NET 9.0环境下aspnet-codegenerator运行报错,官方称支持仍异常
问题分析
你遇到的核心问题是:dotnet-aspnet-codegenerator工具的编译目标框架为.NET 8.0,启动时会依赖对应版本的Microsoft.NETCore.App runtime,但你的环境仅安装了.NET 9.0,导致工具无法找到所需依赖框架。尽管该工具支持在.NET 9.0环境中运行,但工具本身的编译绑定版本并未适配.NET 9.0,因此触发了报错。
解决方案
以下是几种可行的解决办法:
1. 安装.NET 8.0 Runtime(直接解决依赖问题)
通过终端安装.NET 8.0的ARM64版本runtime,满足工具的依赖要求:
dotnet install runtime microsoft.netcore.app 8.0
安装完成后重新运行代码生成命令即可。
2. 更新工具到适配.NET 9.0的版本
卸载现有工具,安装针对.NET 9.0编译的版本:
- 卸载已安装的工具:
dotnet tool uninstall -g dotnet-aspnet-codegenerator - 安装适配.NET 9.0的版本(若为预览版需添加
--prerelease参数):dotnet tool install -g dotnet-aspnet-codegenerator --version 9.0.*
3. 全局版本指定(临时兼容方案)
在项目根目录创建global.json文件,强制工具使用.NET 9.0 SDK:
{ "sdk": { "version": "9.0.0" } }
保存后重新运行代码生成命令,尝试绕过runtime版本检查。
验证操作
完成上述步骤后,执行以下命令测试工具是否正常工作:
dotnet aspnet-codegenerator controller -name TestController -m TestModel -dc AppDbContext
内容的提问来源于stack exchange,提问作者Harsh Kumar
相关产品推荐
相关产品推荐

