Convert Property to Auto-Property refactoring
This refactoring helps you convert properties with private backing fields into auto-implemented properties (also known as auto-properties). The refactoring removes the backing field and replaces all its usages with the newly created auto-property.
By default, ReSharper highlights most of the properties that could be converted to auto-properties and suggests the corresponding quick-fix or fix in scope:
If you do not want ReSharper to suggest this, you can disable the code inspection that detects it (Convert property to auto-property). In this case, properties with backing fields are not highlighted and quick-fixes are not suggested, but you can still apply the conversion with the context action or with the corresponding refactoring:
The reverse functionality of converting existing auto-properties to properties with backing field is also available with the corresponding context action. You can also generate default bodies for property accessors using the To compound property context action:
In the example below, the refactoring converts a property with a backing field to an auto-property:
|Before refactoring||After refactoring|
| || |
You can also convert properties to auto-properties using the refactoring commands. To do so, place the caret at the declaration or a usage of a property in the editor, or select it in the File Structure window, and then do one of the following:
- Press Ctrl+Shift+R and then choose Convert Property to Auto-property
- Right-click and choose Refactor | Convert Property to Auto-property in the context menu.
- Choose in the main menu.
This feature is supported in the following languages and technologies:
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.