Visual Studio 2017依赖项无法正确刷新(Visual Studio 2015可正常刷新)
我之前也碰到过和你完全一样的情况——VS2015里改完类库B直接编译就能在Web项目A里用,到了2017就得全重建,巨浪费时间!下面是我亲测有效的几个解决方法,你可以挨个试试:
检查项目引用的“复制本地”设置
右键Project A里引用的Project B → 选择“属性”,确保“复制本地”选项设为True。有时候VS2017会默认把这个改成False,导致类库DLL不会自动同步到Web项目的bin目录。调整构建选项,强制生成依赖项
点击顶部菜单栏的“生成” → “生成解决方案”旁边的下拉箭头 → 选择“仅生成启动项目和依赖项”。这个选项会让VS在编译启动项目(也就是Project A)时,自动先编译它依赖的Project B,并且把最新的DLL复制过去,不用全量重建整个解决方案。清理Web项目的输出缓存
有时候Web项目的bin/obj文件夹里会残留旧的DLL缓存。你可以手动删除Project A目录下的bin和obj文件夹,然后重新编译Project B再编译Project A,大概率能解决缓存导致的不刷新问题。检查项目的构建顺序和依赖关系
右键解决方案 → 选择“项目依赖项”,确认Project A确实依赖于Project B;再进入“项目构建顺序”,确保Project B在Project A之前被构建。VS2017偶尔会因为解决方案配置变更,导致依赖顺序错乱。关闭“快速启动”模式(如果开启的话)
有些时候VS2017的“快速启动”为了加快启动速度,会跳过一些依赖项的增量编译。你可以在“工具” → “选项” → “项目和解决方案” → “Web项目”里,关闭“使用快速启动”选项,然后重启VS再试试。
这些方法里,我当时是调整“仅生成启动项目和依赖项”加上清理缓存解决的,你可以先从这两个开始试,应该能解决大部分情况。
内容的提问来源于stack exchange,提问作者DuncanMack

