ReSharper 2017.1 Help

Solution-Wide Code Inspections

The majority of code inspections only need the source code of a single file to work and detect code issues. In addition to these inspections, ReSharper provides solution-wide inspections, that target code issues only detectable in scope of entire solution:

If necessary, you can disable solution-wide inspections or only enable solution-wide inspections for internal symbols in specific project. To do so, select the project in the Solution Explorer and using the Solution-Wide Inspections selector in the Visual Studio's Properties window.
Note that independently of the value in this selector, solution-wide inspections would be disabled if the solution-wide analysis is disabled in ReSharper options.

Specifically, solution-wide warnings and suggestions help you discover:

  • Unused non-private type or member declarations:
    'Remove unused method' fix in the action list
  • Unused return values of non-private methods.
  • Unused parameters in non-private members.
  • Unassigned fields.
  • Unaccessed non-private fields.
  • Members and types that can be made internal, private or protected instead of public:
    'Make private' fix in the action list
  • Non-private classes that can be made sealed.
  • Non-private classes or members that can be made static.
  • Non-private local variables or fields that can be converted to constants.
  • Non-private fields that can be made read-only:
  • Non-private classes with never overridden virtual members.
  • Non-private events that are never subscribed to.
  • Abstract or virtual events that are never invoked:
    'Create event invocator' fix in the action list
  • Auto-implemented non-private property accessors that are never used.
  • Suspicious type conversions or checks.
  • Non-private type members that are never used via base type or interface
  • Non-private type members that are only accessed from overrides
  • Parameters of non-private methods that can be declared with IEnumerable<T> type
  • Non-private methods that can have IEnumerable<T> return type
  • Redundant method overloads
  • Non-static classes that are never instantiated
Last modified: 12 October 2017

See Also