【发布时间】:2014-02-12 18:05:42
【问题描述】:
问题:
SolutionA(MVC 解决方案)无法加载 SolutionB(业务逻辑类库)中的类库之一的 PDB 文件。 (它加载其他类库 pdb 就好了)
环境:
- .Net 4.0
- MVC
- C#
- Visual Studio 2012
- 在类库的 Debug/bin 文件夹中找到 PDB 文件
- 在所有引用此类库的项目(调试/bin)中找到 PDB 文件。
- PDB 创建时间与编译时间相同
本地路径:
• C:\MyPath\WK_SOLUTIONA\Dev_BF\SolutionA
• C:\MyPath\WK_SOLUTIONB\Prod\SolutionB
如果有 SolutionA 对 SolutionB 的引用(即 dll 引用),则设置了引用路径(属性 > 引用路径)
符号加载信息:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\launcher_devbf\0a01d364\380351a5\assembly\dl3\9ae300b0\47b07c94_5317cf01\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
b:\23\575\src\SolutionBClassLibrary \obj\Release\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Windows\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Windows\symbols\dll\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Windows\dll\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Users\R9962~1.SCH\AppData\Local\Temp\SymbolCache\SolutionBClassLibrary.pdb\4c48672e09774c67b9f8001ecafacbd71\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Users\R9962~1.SCH\AppData\Local\Temp\SymbolCache\MicrosoftPublicSymbols\SolutionBClassLibrary.pdb\4c48672e09774c67b9f8001ecafacbd71\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\MyPath\WK_SOLUTIONB\Prod\SolutionB\bin\Debug\SolutionBClassLibrary.pdb: PDB does not match image.
SYMSRV: C:\Users\R9962~1.SCH\AppData\Local\Temp\SymbolCache\SolutionBClassLibrary.pdb\4C48672E09774C67B9F8001ECAFACBD71\SolutionBClassLibrary.pdb not found
SYMSRV: http://referencesource.microsoft.com/symbols/SolutionBClassLibrary.pdb/4C48672E09774C67B9F8001ECAFACBD71/SolutionBClassLibrary.pdb not found
http://referencesource.microsoft.com/symbols: Symbols not found on symbol server.
我尝试过的:
- 确保清洁和重建两种解决方案
- 清除符号缓存并手动删除以下内容:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files
- 在符号缓存 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET 文件中手动插入 pdb 文件
- 将符号路径“加载符号”指向 SolutionBClassLibrary 的调试文件夹。结果:“在此文件夹中未找到匹配的符号文件”
- 工具 > 选项 > 调试 > 设置“启用 .NET Framework 源代码步进”(适用于两种解决方案)
- 已删除 IIS 虚拟目录并重新创建。
- 从 SolutionA 调试到 SolutionB
- 从 SolutionA 开始调试,并在 SolutionB 上继续调试。每当点击这个特定的类库时,它都会忽略我的更改。
【问题讨论】:
-
PDB does not match image -
您确定该库实际上有一个 pdb 文件吗?
-
@jamesthollowell 它显示在引用它的 Debug/bin 文件夹以及它自己的 Debug/bin 文件夹中
-
@SLaks 将对此进行调查。关于为什么会出现这个问题的任何建议?
-
您是否正在使用“附加到进程”调试服务?如果是这样,您附加到的可执行文件的位置可能与 PDB 的位置不同。
标签: c# asp.net-mvc visual-studio-2012