Find Usages of External Symbols
ReSharper helps you find any outgoing references within a certain scope which can be as narrow as a function or as large as a project. Depending on the scope of the search, ReSharper will show you usages of all symbols defined outside of that scope. These may be symbols from your solution or symbols from compiled assemblies referenced in the current project.
This command comes in handy when you are going to move a class or a method to another place. You will be able to use the list of outgoing references to estimate additional changes that the move will require.
ExternalSymbols class below. If you run the command on the constructor, the search result will be a single usage of the method
Divide, because it is defined outside of the constructor. If you run the command on the class, the search result will be the usage of
System.ArgumentOutOfRangeException, because the rest is defined inside the class.
If you run the command on a project, search results will include usages of symbols from referenced assemblies and usages of symbols from other projects in your solution, if any.
There are two ways to run the search for external symbols: if the scope is a project, a project folder, or a file, start the search from the Solution Explorer; if the scope is a class or a function, start the search from the editor.
To find usages of the symbols defined outside of the current scope
Do one of the following:
Select a project, a project folder, or a file in the Solution Explorer.
In the editor, set the caret at a function or class.
In the main menu, choose .
If you are starting your search from the Solution Explorer, you can also right-click the selected item and then select Find Symbols External to Scope in the context menu.
If you are starting your search from the editor, you can also press Ctrl+Shift+G and then select Referenced Code in the Navigate To menu.