A decompiler is an unknown tool to Episerver developers.
Nobody would dare
to use it on Episerver dlls as it is against the EULA. You'll never run into any problems
where some extra insight is necessary. Same goes for bugs, those are non-existant anyways.
Even though debugging symbols have been available in the past. There is absolutely no way
to debug Episerver dlls.
A decompiler is a good friend of many Episerver developers. The docs are pretty extensive
but you might find yourself in a position where you want to know how to implement certain
functionality. Next to that you could be running into a bug in the framework, which could
be like looking for a needle in a haystack. Unfortunately there are no debugging symbols
available for us Episerver developers (I've heard that the symbols have been available in
the past though).
Really?! Click here! Thruth or dare
Anyways, it is possible to debug basically any dll. A great tool for this is JetBrains dotPeek.
You can follow the steps for setting up dotPeek on the
JetBrains help page.
After that just start dotPeek, start the symbol server and drag the episerver dll
to the assembly explorer (as I've set up dotPeek to serve just those dlls).
After doing so you have to add the symbol server url in Visual studio by going to tools->options->Debugging->Symbols.
You'll have to disable 'Just My Code' on tools->options->Debugging->General and press
the 'Load' button on the 'No Symbols Loaded' page.
You can now step through and place breakpoints in epi code
. Some extra info can be found
here and
here
Click to see all images
tl;dr?
- Click on “Really?! Click here! Thruth or dare ”
- Install dotPeek, start dotPeek, start the symbol server
- Add any dll (episerver.dll perhaps?) to Assembly explorer in dotPeek
- Add your symbol server url to vs-tools->options->Debugging->Symbols
- Disable ‘Just My Code’ on vs-tools->options->Debugging->General
- Now you can load debug symbols for epi during debugging
- Other option is to place pdb file in bin next to episerver.dll
- More info