我现在遇到两次的问题是我的程序似乎正在运行不再存在的代码。我认为一些旧版本被卡住了,但不知道如何让编译器运行我编写的更新代码。
我发现问题的方法是观察我加载的位图即使在我删除了这样做的指令之后仍然被绘制。即使删除了对相关图像的所有引用,包括内容加载行,问题仍然存在。
第一次发生这种情况时,重新启动编译器并没有解决问题,但重新启动计算机却解决了。现在完全关闭后问题仍然存在。
如果有任何影响,我正在使用 ms C# 2008 速成版。
我的第一个想法是构建失败并且 Visual Studio 正在运行旧版本。我没有 VS 2008,但在 VS 2010 中,更改此选项的选项位于 Tools->Options->Projects and Solutions->Build and Run。
In my experience this happens when configuration profile is changed from debug. For instance if I am running the debug profile, it works. Then I change to the QA profile and make changes and then build the new assemblies. The assemblies are built to a directory called "QA" however, when I debug through visual studio it runs the code from the debug profile. I can remove references, recompile the code, visual studio will still run from the debug profile. It appears that none of the changes I made are in the code. When in reality I'm inadvertently running a old build.
您必须弄清楚不匹配的来源。从 VS 外部运行 .exe 会发生什么?从VS内部呢?您能否验证构建后,您正在执行的二进制文件具有更新的时间戳?.dll 中的陈旧代码是否没有被拉入新版本?