求助:UWP项目Automapper引用无法识别,卸载重装仍异常
兄弟,我来帮你捋捋这个AutoMapper引用识别的坑——结合你提到的系统还原+VS2017更新的背景,大概率是环境缓存、组件兼容性或者项目配置出了问题,试试下面这些分步方案:
检查NuGet包的实际安装状态
右键你的UWP项目,选择「管理NuGet程序包」,切换到「已安装」标签,确认AutoMapper是否真的在列表里。如果看不到,别着急卸载重装,先在「浏览」里搜索AutoMapper,安装时注意选稳定版(避开预发布版本),同时留意安装时的兼容性提示——UWP对NuGet包的目标框架有要求,比如部分AutoMapper版本只支持UWP 10.0.16299及以上的目标版本。
另外,你可以右键项目→「编辑.csproj」,查看是否有类似<PackageReference Include="AutoMapper" Version="x.x.x" />的条目,如果没有,手动添加对应版本的条目后保存,再重新加载项目。彻底清理VS和NuGet的缓存
先关闭Visual Studio,然后手动清理这些缓存目录:- 删除
%LOCALAPPDATA%\Microsoft\VisualStudio\15.0_*\ComponentModelCache(15.0是VS2017的版本标识,星号对应你的VS实例文件夹) - 删除
%USERPROFILE%\.nuget\packages里的AutoMapper文件夹
之后打开VS,点击「工具」→「选项」→「NuGet包管理器」→「常规」,点击「清除所有NuGet缓存」,重启VS后再重新安装AutoMapper。
- 删除
核对项目目标框架与AutoMapper的兼容性
右键项目→「属性」→「应用程序」,确认UWP的目标版本和最低版本是否和你系统还原前一致,或者是否符合AutoMapper的支持要求。比如如果你的项目目标版本调低了,可能会导致已安装的AutoMapper包无法被识别。修复Visual Studio安装
系统还原和版本更新可能导致VS的部分组件损坏。打开「控制面板」→「程序和功能」,找到「Visual Studio Community 2017」,右键选择「更改」,然后选「修复」,等修复完成后重启电脑,再重新配置AutoMapper引用。用新项目排查问题根源
有时候是当前项目的配置文件损坏了,你可以创建一个空白的UWP测试项目,安装AutoMapper看看是否能正常识别。如果新项目没问题,那说明旧项目的配置有问题,可以对比两个项目的.csproj文件找出差异,或者逐步把旧项目的代码迁移到新项目里。
内容的提问来源于stack exchange,提问作者Tommy Stenberg

