无法找到或打开PDB文件 - PDB不是用DLL构建的

时间:2017-03-04 15:33:06

标签: c# asp.net dll visual-studio-2013 debug-symbols

我的Visual Studio 2013 ASP.NET webform应用程序有3个DLL程序集。调试时,DLL和PDB在同一个临时ASP.NET文件目录中为三个DLL中的两个(Project / VB模块和一个C#模块)创建。第三个DLL也是一个C#模块,而PDB不是生成到与DLL相同的目录。

找不到最后一个问题模块的符号。当我尝试手动加载符号文件时选择在与DLL相同的日期/时间创建的PDB时,我收到错误"在此文件夹中找不到匹配的符号文件。"

为什么PDB会在DLL的目录中为两个模块而不是第三个模块构建?我在符号设置对话框中尝试了各种选项,更改符号文件位置和目录,清理和重建解决方案,结果不会更改。

3 个答案:

答案 0 :(得分:6)

您是否签入了高级构建对话框(在项目属性中(缺少pdb的那个),然后调试信息:pdbonly或full? 它不能设置为" none"

pdb

答案 1 :(得分:2)

此问题已解决。没有生成符号文件的C#模块是DLL的旧副本。尝试重建模块并没有取代旧的DLL。

首先删除旧DLL的所有副本,然后重建模块。下一次调试尝试显示正确创建了新的DLL和PDB文件。

答案 2 :(得分:1)

在对测试项目的app.config进行更改后,尝试运行测试时,我也突然出现此错误。这些更改原来是无效的。