I've recently upgraded to R# 7.1 and I'm having this problem where the To Property With Backing Field
action displaces my backing fields and moves them to the top of the class.
Example:
Step 1: Define an auto property:
public class MyClass
{
//... Lots of members here
public int MyNewProperty {get;set;} // <- Create auto Property
}
Step 2: ReSharper's "To Property With Backing Field"
Expected result:
public class MyClass
{
//... Lots of members here
private int _myNewProperty; // <- Backing field immediately above property
public int MyNewProperty
{
get
{
return _myNewProperty;
}
set
{
_myNewProperty = value;
}
}
}
Obtained Result:
public class MyClass
{
private int _myNewProperty; // <- Backing field on top of the class
//... Lots of members here
public int MyNewProperty
{
get
{
return _myNewProperty;
}
set
{
_myNewProperty = value;
}
}
}
I've already been playing with Type Members Layout
configuration by commenting the "instance fields" part, like this:
<!--instance fields-->
<!--<Entry>
<Match>
<And>
<Kind Is="field"/>
<Not>
<Static/>
</Not>
</And>
</Match>
<Sort>
<Readonly/>
<Name/>
</Sort>
</Entry>-->
But I still get the same behavior.
Q: How can I prevent this behavior and revert it to the V6.X one?
<Name/>
from the<Sort>
tag? – Anett