Visual Studio 2019 ASP.NET项目netstandard引用移除后报错求助
解决.NET Framework 4.7.2项目加载netstandard失败的问题
核心原因
.NET Framework 4.7.2原生支持.NET Standard 2.0,不需要手动安装netstandard NuGet包或添加本地dll引用。手动操作会干扰项目的依赖解析逻辑,导致构建和运行时的冲突。
分步解决步骤
- 清理项目残留的netstandard相关配置
关闭Visual Studio,找到项目的.csproj文件用文本编辑器打开,删除所有包含netstandard的<Reference>节点、所有包含NetStandard.Library或Microsoft.Windows.Compatibility的<PackageReference>节点(若确认不需要后者),保存后关闭文件。 - 清理项目缓存
删除项目目录下的bin和obj文件夹;删除用户目录C:\Users\[你的用户名]\.nuget\packages中netstandard和microsoft.windows.compatibility相关的文件夹。 - 重新配置ClosedXML的依赖
重新打开Visual Studio加载项目,通过NuGet包管理器重新安装ClosedXML,它会自动适配.NET Framework 4.7.2的依赖,无需手动处理netstandard。 - 修复项目引用和命名空间
检查项目“引用”节点,移除带黄色感叹号的无效引用;针对'System.Object' is not defined or imported错误,右键“引用”→“添加引用”,在程序集列表中勾选System等核心程序集添加。 - 验证项目构建和运行
执行菜单栏→生成→清理解决方案,再执行重新生成解决方案,最后启动调试确认报错是否消失。
额外注意事项
- 禁止手动添加
netstandard.dll作为引用,.NET Framework项目会通过NuGet自动处理.NET Standard依赖的解析。 - 若确实需要
Microsoft.Windows.Compatibility包,确保安装版本与.NET Framework 4.7.2兼容,安装后无需额外配置netstandard。
内容的提问来源于stack exchange,提问作者Diana4
相关产品推荐
相关产品推荐

