dotPeek 2021.1 Help

Navigate To Sources from Symbol Files

Navigate | Navigate To | Sources from Symbol Files
Control+Shift+G | Sources from Symbol Files

This command tries to fetch the original source file of a library symbol and display the symbol there. The command becomes available when you invoke Navigate To on a library symbol in your source code and on decompiled sources. You can invoke this command from the Assembly Explorer, from the File Structure window and other tool windows.

dotPeek: Navigating to external source file

It may take some time while dotPeek downloads the required files from the symbol server; in this case, you will see the download progress.

To successfully execute this command, PDB information should be available for the target assembly. dotPeek uses two approaches to search for the PDB:

  • It searches for PDB locally, in the same directory where the target assembly is located.

  • If it fails to find the PDB there, it looks it up on a symbol server using the _NT_SYMBOL_PATH environment variable.
    Some companies publish parts of their sources using symbol servers (source servers). For example, Microsoft uses this technology to provide access to the source code of the .NET Framework. If the symbol server for the target PDB is available, this command can access sources stored that way.

To make dotPeek aware of available symbol servers, you need to specify them in the _NT_SYMBOL_PATH environment variable. dotPeek will look for symbol files and download them from the specified locations.

If the source symbols are hosted on a private source server, dotPeek will fetch them using private Source Link and ask for the connection credentials if necessary.
If you use private Source Link, make sure that the Enable private Source Link support on the Decompiler page of dotPeek options Ctrl+Alt+S.

This feature is inspired by and borrowed from JetBrains ReSharper, a developer productivity tool for Microsoft Visual Studio.

Last modified: 08 March 2021