【发布时间】:2013-11-21 16:46:53
【问题描述】:
我陷入了 DLL 地狱。我有一个在我的项目中引用的 .dll。我将其称为 project.dll。 Project.dll 由 Visual Studio 2012 创建。我通过浏览到它的 bin 目录引用了 project.dll。我可以在目录中实际看到它。
当我尝试调试到 project.dll 时,Visual Studio 的行为就像这个东西不存在一样。相反,它给了我一个屏幕,上面写着“找不到文件名.cs”。”(它甚至看起来吗?) Filename.cs 是 project.dll 的一部分。它让我可以选择浏览到 filename.cs,我尝试这样做做。然后我得到一个错误,说源文件与构建模块时不同。这没有意义,因为我只是 BUILT project.dll 并引用了它。我还应该补充一点,错误有以下几点:
来源:Filename.cs 的正确路径
模块:空白
进程:空白
我已经尝试了以下所有方法,但没有任何解决方法:
- 清理/构建/重建两个项目。 (到了想吐的地步)
- 清除浏览器缓存
- 删除临时文件
- 删除 C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files 下的所有内容
- 验证 GAC 中不存在 project.dll。
- 多次退出并重新启动 Visual Studio。
- 重新启动计算机。
- 删除引用,然后重新添加引用。
- 从另一个项目的 bin 文件夹中手动删除 project.dll。
- 尖叫。
如何让 Visual Studio 2012 识别 project.dll 和 filename.cs 都存在并且是正确的版本?另外,也许更重要的是,我如何防止这种 BS 将来发生?
编辑:我刚刚注意到在“浏览到文件”屏幕上,有一个文本框显示“原始位置”,后面跟着一个在我的机器上不存在的路径。我相信这是问题的一部分。如何让 Visual Studio 停止查找无效路径,而是查看引用 project.dll 的正确路径?
【问题讨论】:
-
superuser.com 似乎是提出这个问题的好地方!
-
@huMptyduMpty 这看起来像是开发人员的问题,而不是 IT。
-
那个原始位置对你来说是不是很眼熟?我看到它现在不存在,但它是您机器上以前存在的位置吗?或者它完全不熟悉并且在其他开发者的机器上?