ReSharper 2018.3 Help

Generating Code from Usage

ReSharper lets you use code symbols (classes, methods, variables, properties, fields, etc.) before you declare them. When ReSharper detects an undeclared symbol, it suggests one or more quick-fixes for generating the corresponding symbol based on the usage, and then smartly adjust the declaration according to the usage context:

'Generate from usage' quick-fix

For example, if you create a method from usage, ReSharper will not only create a method, but also detect its return type and types of its parameters:

Code Analysis Examples of Quick Fixes undefined method return type

Depending on your settings, in the bodies of generated implementations ReSharper throws new NotImplementedException(), returns default value, or puts code that will not compile. You can configure your preferences on the Code Editing | Members Generation page of ReSharper options.

For additional examples of how ReSharper creates code symbols from usages, see Undefined variable and Undefined method call samples in the Examples of Quick-Fixes.

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

Feature is available

Feature is available

Feature is available

Feature is available

Feature is available

Feature is available

Feature is available

Feature is available

Feature is not available

Feature is available

Feature is not available

Feature is available

Feature is not available

Feature is not available

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: 18 December 2018

See Also