I ran into a situation today wherein I was required to debug the Google Authentication middleware built on top of OWIN.
I already had the code checked out from Katana project in CodePlex. However, when I tried to use, it was the latest bits [dev channel]. My app was using the version 2.1 and the dev version was in 3.0.
Tired of searching the tag for the version 2.1, I came to know that the symbols for the various open source projects are made available from SymbolSource.org
Given this piece of information, I read the steps on how to configure the symbol server in Visual studio and then upon successful source registration, I was able to step through the middlewares and do the debugging stuff.
Things that I did were,
- Grab the public [authentication less uri access] from Symbol Source [
- Go to Tools -> Options -> Debugger -> General.
- Uncheck “Enable Just My Code (Managed only)”.
- Uncheck “Enable .NET Framework source stepping”. Yes, it is misleading, but if you don’t, then Visual Studio will ignore your custom server order (see further on) and only use it’s own servers.
- Check “Enable source server support”.
- Uncheck “Require source files to exactly match the original version”
- Go to Tools -> Options -> Debugger -> Symbols.
- Select a folder for the local symbol/source cache. You may experience silent failures in getting symbols if it doesn’t exist or is read-only for some reason.
- Add symbol servers under “Symbol file (.pdb) locations”. Pay attention to the correct order, because some servers may contain symbols for the same binaries: with or without sources. We recommend the following setup:
- These steps are highlighted in the Uri [http://www.symbolsource.org/Public/Wiki/Using]