我的解决方案中的所有项目都有Release版本的“.. \ Release”和Debug版本的“.. \ Debug”。
除了一个项目之外,所有项目都运行良好。
每当我在Release中构建有问题的项目时,被复制到“.. \ Release”的dll来自“obj \ Debug”而不是“obj \ Release”。在VS和手动运行MSBuild构建时都会发生这种情况,但如果我先清理“obj \ Debug”文件夹,则不会发生这种情况。
这是我认为相关的构建日志的一部分:
17>Target CopyFilesToOutputDirectory:
17> Task "Copy"
17> Copying file from "obj\Release\XXXXX.dll" to "..\Release\XXXXX.dll".
17> Command:
17> copy /y "obj\Release\XXXXX.dll" "..\Release\XXXXX.dll"
17> Done executing task "Copy".
17> Task "Message"
17> XXXXX -> C:\Dev\Service\Release\XXXXX.dll
17> Done executing task "Message".
关于为什么会发生这种情况的任何想法?
答案 0 :(得分:1)
我意识到这个线程已被解决,但我遇到了这个相当令人沮丧的VS问题(bug?)。我的修复是简单地向正在从错误路径复制文件的项目添加obj \ release引用路径。
答案 1 :(得分:0)
您可能想要根据参考检查路径;它可能是你以某种方式引用它反对obj文件夹。这在csproj中比在IDE(“提示路径”或其他东西)中更容易看到。