Sto cercando di eseguire il debug di StackOverflow nel pacchetto NuGet di EntityFramework (versione 6.1.3). Per vedere i frame dello stack ho bisogno del file PDB per EntityFramework.DLL e EntityFramework.SqlServer.DLL. Tuttavia, non riesco a ottenere Visual Studio per scaricare questo da fonti di simboli MSFT o da SymbolSource.org (posso ottenere altri PDB di sistema e cose come NewtonSoft.json). I PDB EF sono disponibili ovunque?
Ora con le foto (mi ci sono voluti circa un'ora di prove e fallito)
Ottieni DotPeek da Jetbrains (versione standalone)
Apri DotPeek
-> File
-> Open
-> EntityFramework.dll
cartella bin
progetto e apri EntityFramework.dll
Pulsante destro del mouse su EntityFramework
quindi scegliere Generate Pdb...
Vai alla cartella in cui l'hai esportato e apri la cartella EntityFramework.pdb
(lo so bene!) Quindi approfondisci fino a trovare un file EntityFramework.pdb
e copialo nella cartella bin
(accanto a EntityFramework.dll
).
Vai a Visual Studio
-> DEBUG
-> Options and Settings...
-> Symbols
quindi aggiungi la cartella bin
a posizioni Symbol file (.pdb) locations
Modifica: A volte inizia ad eseguire EF in modalità optimized
che rende il debug praticamente inutile, che è un punto centrale di questa domanda - se questo accade
Visual Studio
-> Debug
-> General
-> (in fondo) Use Managed Compatibility Mode
. Tick and Run project (se viene ottimizzato, deselezionare ed eseguire, quindi selezionare nuovamente ed eseguire, quindi ....) EF
funziona ottimizzato senza dover attendere fino a raggiungere il punto di interruzione, vai in Visual Studio
-> Debug
-> Windows
-> Modules
. Quindi, quando si eseguono i moduli di soluzione (2) dovrebbe apparire. Fare clic e trovare EntityFramework.dll
dovrebbe essere la colonna che dice ottimizzato ( Yes
= cattivo, No
= è possibile eseguire il debug). Spero che questo ti salvi un po 'di tempo.