I call a method in Visual Studio and attempt to debug it by going over the call stack.
Some of the rows in it are marked "External code".
What exactly does this mean? Methods from a .dll have been executed?
Stupid question; but need a definitive answer.
External cause codes identify the cause of an injury or health condition, the intent (accidental or intentional), the place where the incident occurred, the activity of the patient at the time of the incident, and the patient's status (such as civilian or military).
Call stack is set of lines, which is usually read from top to bottom - meaning moving from current locations to callers. The bottom line was executed first. The top line is executed last and it is the current routine.
Just My Code is a Visual Studio debugging feature that automatically steps over calls to system, framework, and other non-user code. In the Call Stack window, Just My Code collapses these calls into [External Code] frames. Just My Code works differently in . NET, C++, and JavaScript projects.
[External code] means that there is no debugging information available for that dll.
What you can do is in Call Stack
window click right mouse button. Then select Show External Code
this will expand [External Code] and will show you modules that are being called.
once you get it expanded you will see dll's that are being called you can get locations on disk by clicking on Symbol Load Information...
This will open dialog that shows locations on disk
If you want to debug these external files you need to get .pdb
files for dll's and place in same folder as .dll
this should allow you to Load symbols
(menu in screenshot 2 above Symbol Load Information
) and start debugging.
More on getting .pdb files here.
And here's an actual example of EF .pdb being generated
Hope this saves you some time.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With