Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Visual Studio 2015中未生成pdb_C#_Debugging_Visual Studio 2015 - Fatal编程技术网

C# Visual Studio 2015中未生成pdb

C# Visual Studio 2015中未生成pdb,c#,debugging,visual-studio-2015,C#,Debugging,Visual Studio 2015,当我在VS2013(旗舰版)中打开它时,我有一个解决方案运行良好,但当我在VS2015(企业版)中打开它时,其中两个项目不会生成调试信息 一个项目是MVC5应用程序,另一个是类库。解决方案中的所有项目都设置为.net 4.5,并且都设置为调试模式 这两个项目的高级设置都设置为“完全”,并显示为无问题编译,但当我在站点运行时打开“调试>窗口>模块”窗口时,这两个二进制文件的符号状态为“二进制文件未使用调试信息生成”(解决方案中的其他二进制文件正确加载符号) 我已经删除了bin/obj文件夹,清除了

当我在VS2013(旗舰版)中打开它时,我有一个解决方案运行良好,但当我在VS2015(企业版)中打开它时,其中两个项目不会生成调试信息

一个项目是MVC5应用程序,另一个是类库。解决方案中的所有项目都设置为.net 4.5,并且都设置为调试模式

这两个项目的高级设置都设置为“完全”,并显示为无问题编译,但当我在站点运行时打开“调试>窗口>模块”窗口时,这两个二进制文件的符号状态为“二进制文件未使用调试信息生成”(解决方案中的其他二进制文件正确加载符号)

我已经删除了bin/obj文件夹,清除了临时asp.net文件,重新启动了VS和windows(10),但运气不好

这会影响到其他团队成员,因此我的环境似乎没有问题

另外,如果我在VS2013中编译,VS2015将毫无问题地使用pdb,它只是不会自己生成它们

我假设这是VS2015中的某个设置/功能/错误,但我不确定还能检查/更改什么来解决这个问题


编辑:web项目的web.config设置为debug=“true”,并且它不受配置转换的影响,实际上debug与是否生成pdb无关。许多人为生产版本生成pdb,并将其保存在本地符号存储中。
无论如何,尝试转到项目下的build选项卡,然后Advanced并将debug info设置为pdb only或full。

结果表明,这是PostSharp的一个问题

两个项目都引用了版本3.1.52-升级到4.1.21后,我们现在再次生成pdb


我不太清楚问题是什么,也不清楚为什么会这样表现,但希望这能阻止其他人像我一样把头撞到墙上

如果项目中使用旧版本的Telerik open data access,则会出现相同的问题。项目在通过VS2013构建时生成pdp文件,但在使用VS2015构建时不生成pdp文件

找出它需要最新版本Q2(没有Visual designer-Telerik Data Access的2015年第1季度版本是最后一个发布Visual Studio集成和代码生成功能的版本)的原因需要花费大量的时间和精力


无论如何,请阅读Telerik支持博客

我必须手动将*.csproj文件中的
pdbonly
添加到PropertyGroup中,条件与我调试的生成配置相匹配。

配置是否设置为调试?如果不是,则将其设置为“调试”而不是“发布”。然后删除所有构建并重新构建。忘记提及我已经检查了这个-更新了问题我在UI上找不到任何选项,因此我在记事本中打开了csproj文件,但没有找到任何选项。因此,我将其与另一个临时项目进行比较,将其更改为“full”。这两个项目都已将其高级调试信息设置为full。您是否使用telerik产品?看来他们有这个问题。。这真的很奇怪。。。你可以试着打开一个生成pdb的csproj,只有它不生成pdb,然后在文本编辑器中比较它们,也许你能发现一些东西……也有可能创建一个新项目并导入所有代码,但这似乎有点老套,甚至可能不起作用。谢谢-你对telerik的评论让我了解到我们使用的东西可能会干扰过程。遇到了同样的问题。我喜欢PostSharp,但我开始怀疑它是否比它的价值更痛苦……我也是。有时PostSharp真的很痛苦。这让人沮丧。期待着从我的解决方案中删除PostSharp。我也有同样的问题。原来我的项目指向GAC中的编译版本。我删除了该引用并重新添加了nuget软件包。有关更多详细信息,请参阅:谢谢。。。是的,这是对视觉设计师的轻描淡写和巨大损失。