The Rename family of refactorings helps change names of namespaces, classes, structs, methods, fields, local variables and other symbols, see the table below for details. All corresponding references in code are updated automatically.
The refactoring can be invoked from the text editor, from ReSharper tool windows (for example, Type Hierarchy) and sometimes from other views (Class View, Object Browser).
- Place the caret at the declaration or at a usage of a symbol in the text editor.
-
Do one of the following:
- On the main menu, choose ReSharper | Refactor | Rename.
- Press Shift+F6 or F2.
- Press Ctrl+Shift+R, then click Rename.
-
The Rename dialog box opens. Type a new name for the symbol
in the Name text box or use one of suggested names.

ReSharper provides name completion in the Name text box, taking into account your naming style.
To invoke name completion, place the caret at the first character of the existing name, or in the blank text box, press Ctrl+Space.
Tip -
ReSharper can provide the list of related symbols in comments and string literals and
rename them on demand. If you need it, select
the Search in comments and string literals check box.
Controls available in the Rename dialog box vary depending on a symbol refactoring is applied to. Local variables are renamed in dialogless mode.
Note - Click Next. In simple cases, ReSharper immediately applies the refactoring. However, before
it is completed, ReSharper could display the following additional screens:
-
If there are related symbols that have names containing the string being changed (for example,
read and write properties of a field or
instances of a class, related file names, or even classes that implement an interface being
renamed), the
second page provides the list of these:

Select related symbols that you want to rename along with the selected symbol, and click Next. -
If you have previously selected Search in comments and string literals, ReSharper displays located usages (if
any) in the following screen:

Select textual occurrences that you want ReSharper to rename.
-
If there are related symbols that have names containing the string being changed (for example,
read and write properties of a field or
instances of a class, related file names, or even classes that implement an interface being
renamed), the
second page provides the list of these:
- Click Next. If no conflicts are found, ReSharper will complete the refactoring. Otherwise, resolve conflicts.
ReSharper Rename refactorings
|
Symbol |
Description |
|---|---|
| Namespace |
Renames a namespace and automatically corrects all references to the namespace in code. The following usages are renamed:
Along with renaming a namespace, you can change its nesting level.
For example, you can rename A.B.C namespace
to A.D.
|
| Type |
Renames an interface, class, struct, or enum and automatically corrects all references to the type in code. The following usages are renamed:
If the renamed type is located in file with the same name, ReSharper suggests (or actually renames) to rename the file. |
| Method |
Renames a method and automatically corrects all references to the method in code. The following usages are renamed:
|
| Field |
Renames a field and automatically corrects all references to the field in code. |
| Property | Renames a property and automatically corrects all references to the property in code. |
| Event | Renames an event and automatically corrects all references to the event in code. |
| Parameter |
Renames a method/constructor parameter and automatically corrects all references to the parameter in code. The following usages are renamed:
If the selected method is a part of inheritance/implementation hierarchy, ReSharper will ask whether to rename the parameter in the whole hierarchy. |
| Local variable or constant |
Renames a variable or constant and corrects all references in code. ReSharper renames local variables (including constants) in dialogless mode. When you call the
Rename
refactoring for a local variable or constant, ReSharper suggests new
variable names based on its type and context. You can
either choose one of the suggested names or enter a custom name
directly in the editor:
|
