The Rename family of refactorings helps change names of namespaces, classes, structs, methods, fields, local variables and other symbols
(see also
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).
- Position 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 wizard opens. Type a new name for the symbol in the Name box or use one of default names.

ReSharper provides name completion in the Name box, taking into account yournaming 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 wizard 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 wizard screens:
- a. 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 ReSharper to rename along with the selected symbol, and click Next. - b. 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.
- a. 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 .
|
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 |
| 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: |
