最近 R# 7.1 にアップグレードしましたが、To Property With Backing Field
アクションによってバッキング フィールドが置き換えられ、クラスの先頭に移動するという問題が発生しています。
例:
ステップ 1 : auto プロパティを定義します。
public class MyClass
{
//... Lots of members here
public int MyNewProperty {get;set;} // <- Create auto Property
}
ステップ 2 : ReSharper の「バッキング フィールドを持つプロパティへ」
期待される結果:
public class MyClass
{
//... Lots of members here
private int _myNewProperty; // <- Backing field immediately above property
public int MyNewProperty
{
get
{
return _myNewProperty;
}
set
{
_myNewProperty = value;
}
}
}
得られた結果:
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;
}
}
}
Type Members Layout
次のように、「インスタンスフィールド」の部分にコメントを付けて、すでに構成をいじっています。
<!--instance fields-->
<!--<Entry>
<Match>
<And>
<Kind Is="field"/>
<Not>
<Static/>
</Not>
</And>
</Match>
<Sort>
<Readonly/>
<Name/>
</Sort>
</Entry>-->
しかし、私はまだ同じ動作をします。
Q:どうすればこの動作を防ぎ、V6.X に戻すことができますか?