ReSharper 2023.3 Help

Call tracking

Call Tracking enables you to view and navigate through call chains in your code. ReSharper Call Tracking is a substantial improvement over Visual Studio native Call Hierarchy, thanks to support for events, interfaces, and closures.

In the hierarchy view, ReSharper uses icons to distinguish between different kinds of symbols. If necessary, you can switch between icon sets in the using the Source code symbol icons theme radio buttons on the Environment | General page of ReSharper options.

Investigate outgoing calls

  1. Place the caret at the name of a method, event, property or constructor.

  2. From the main menu, choose ReSharper | Inspect | Outgoing Calls or press Control+Shift+Alt+A and choose Outgoing Calls in the Inspect This list.

  3. In the Inspection Results window that opens, you can expand the member node to run code analysis on it and to display all members called by the current member. You can also expand each of the child nodes.

    Outgoing calls in the Inspection Results window

Investigate incoming calls

  1. Place the caret at the name of a method, event, property or constructor.

  2. From the main menu, choose ReSharper | Inspect | Incoming Calls or press Control+Shift+Alt+A and choose Incoming Calls in the Inspect This list.

  3. In the Inspection Results window that opens, you can expand the member node to run code analysis and to display all members that call the current member. You can also expand each of the child nodes.

    Incoming calls in the Inspection Results window

When you get a lot of calls in the call tracking results, you can hide specific calls or the whole branches of the result tree to have a clearer picture of what you are looking for.

Note that when you switch between tabs in the Inspection Results window, the hidden entries are reset.

Hide entries from the result tree

  1. Right-click the entry that you want to hide and choose Ignore in the context menu.

  2. The entry becomes greyed out but it is still visible and searchable. Also the Show Ignored Usages ThemedIcon.Ignore.Screen.(Gray).png button appears on the toolbar.

  3. To hide or show ignored entries, toggle the Show Ignored Usages ThemedIcon.Ignore.Screen.(Gray).png button.

  4. To reset ignored entries, toggle on the Show Ignored Usages ThemedIcon.Ignore.Screen.(Gray).png button, right-click a greyed-out item, and choose Undo ignore in the context menu.

This feature is supported in the following languages and technologies:

Language: C#

Language: VB.NET

Language: C++

Language: HTML

Language: ASP.NET

Language: Razor

Language: JavaScript

Language: TypeScript

Language: CSS

Language: XML

Language: XAML

Language: Resx

Language: Build Scripts

Language: Protobuf

Language: JSON

Feature is available in C#

Feature is available in Visual Basic

Feature is 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 more information about other languages, refer to corresponding topics in the ReSharper by language section.

Last modified: 18 March 2024