我正在尝试在 EntityFramework NuGet 包(版本 6.1.3)中调试 StackOverflow。为了查看堆栈帧,我需要 EntityFramework.DLL 和 EntityFramework.SqlServer.DLL 的 PDB 文件。但是,我似乎无法让 Visual Studio 从 MSFT 符号源或 SymbolSource.org 下载它(我可以获得其他系统 PDB 和 NewtonSoft.json 之类的东西)。 EF PDB 在任何地方都可用吗?
最佳答案
现在有图片(因为我花了大约一个小时的试验但失败了)
DotPeek
-> File
-> Open
-> 浏览您的项目bin
文件夹并打开 EntityFramework.dll
EntityFramework
然后选择Generate Pdb...
EntityFramework.pdb
文件夹(我知道是对的!)然后深入挖掘,直到找到一个文件 EntityFramework.pdb
并将其复制到您的bin
文件夹(EntityFramework.dll
旁边)。 Visual Studio
-> DEBUG
-> Options and Settings...
-> Symbols
然后添加您的bin
文件夹到 Symbol file (.pdb) locations
编辑:它有时会在
optimized
中开始运行 EF使调试几乎无用的模式,这是这个问题的重点——如果发生这种情况Visual Studio
-> Debug
-> General
->(在最底部)Use Managed Compatibility Mode
.勾选并运行项目(如果它得到优化然后取消勾选并运行,然后再次勾选并运行,然后....)EF
运行优化,无需等到它到达断点 转到 Visual Studio
-> Debug
-> Windows
-> Modules
.然后,当您运行解决方案模块 (2) 时,应该会出现。点击它,找到EntityFramework.dll
应该有一列显示已优化(Yes
= bad, No
= you can debug it)。 希望这可以节省您一些时间。
关于entity-framework - 如何获取 EntityFramework NuGet 包的 PDB 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32104912/