ReSharper 2020.3 Help

Navigate To Sources from Symbol Files

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

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 Solution Explorer, from the File Structure window and other tool windows.

ReSharper: Navigating to external source file

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

This command is not available if the Default Visual Studio Navigation is selected in the Tools | External Sources page of ReSharper options. To make it available, select any other option in this group.

To successfully execute this command, PDB information should be available for the target assembly. ReSharper 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. Additionally, ReSharper uses Visual Studio options to find symbol servers. See below, how to specify symbol servers in Visual Studio options.
    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 ReSharper aware of available symbol servers, you need to specify them in Visual Studio options and/or in the _NT_SYMBOL_PATH environment variable. ReSharper will look for symbol files and download them from the specified locations.

If the source symbols are hosted on a private source server, ReSharper 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 Tools | External Sources< page of ReSharper options (Alt+R, O).

Specify the path to a symbol server in Visual Studio options

  1. Choose Tools | Options from the menu and then go to Debugging | Symbols page.

  2. On the Symbols page, click the folder icon, and then type the path to the source server in the new symbol file location (for example http://domain/path/symbols ). For more information, see How to: Use a Symbol Server.
    It is not important whether the check-boxes next to symbol servers are checked. ReSharper uses its own algorithm to work with symbol servers and analyzes only paths to these servers in Visual Studio options.

This feature is supported in the following languages and technologies:

Language: C#Language: VB.NETLanguage: C++Language: HTMLLanguage: ASP.NETLanguage: RazorLanguage: JavaScriptLanguage: TypeScriptLanguage: CSSLanguage: XMLLanguage: XAMLLanguage: ResxLanguage: Build ScriptsLanguage: ProtobufLanguage: JSON
Feature is available in C#Feature is available in Visual Basic .NET Feature is not available in C++ Feature is not available in HTML Feature is not available in ASP.NET Feature is not available in Razor Feature is not available in JavaScript Feature is not available in TypeScript Feature is not available in CSS Feature is not available in XML Feature is not available in XAML Feature is not available in Resource files Feature is not available in build script files Feature is not available in Protobuf Feature is not available in JSON

The instructions and examples given here address the use of the feature in C#. For details specific to other languages, see corresponding topics in the ReSharper by Language section.

Last modified: 08 March 2021