Visual Studio 2017合并Git分支后出现假报错问题求助
这种情况我之前踩过好几次坑——明明编译一路绿灯,但是编辑器里满屏红波浪线报「无法找到类型或命名空间」,简直逼死强迫症!给你几个亲测有效的解决办法,按顺序试大概率能搞定:
清理并重建解决方案
先点菜单栏的Build→Clean Solution,彻底清理掉旧的编译产物,然后再选Build→Rebuild Solution。合并分支后项目依赖的缓存容易混乱,重建能强制刷新IntelliSense的索引库。重置IntelliSense缓存
按Ctrl+Shift+P打开命令面板,直接输入Reset IntelliSense执行就行,这个比单纯删VS全局缓存更针对性。如果找不到这个命令,也可以去「工具→选项→文本编辑器→C#→高级」里找「重置IntelliSense缓存」的选项。检查NuGet包和项目引用
合并分支很容易搞乱NuGet包版本:右键解决方案→「管理NuGet程序包」,看看有没有黄色警告的包,先点「还原」试试;再检查每个项目的引用列表,有没有带感叹号的无效引用,有的话修复路径或者重新添加。卸载并重新加载项目
右键出问题的项目→「Unload Project」,等项目变灰后再右键→「Reload Project」。如果多个项目都有问题,就批量卸载再重新加载,有时候只是单个项目的IntelliSense进程卡住了。删除.vs隐藏文件夹
找到解决方案根目录下的.vs文件夹(默认是隐藏的),直接删掉它,然后重启VS。这个文件夹里存着VS的本地配置和IntelliSense索引,删了之后VS会重新生成干净的索引文件。检查.csproj文件的合并差异
用Git对比合并前后的项目文件(.csproj),看看有没有引用节点被意外删除、路径写错或者合并冲突没解决的情况。有时候合并冲突会把项目里的引用代码搞成半残,编译靠间接引用能过,但IntelliSense识别不出来。
内容的提问来源于stack exchange,提问作者omriman12

