是否可以使用ReSharper(或其他工具)重新排序类以匹配其接口中的元素顺序?
本文关键字:接口 顺序 元素 ReSharper 可以使 其他 工具 是否 新排序 排序 | 更新日期: 2023-09-27 18:16:01
我当前的代码有一个继承自接口的类,但是接口中元素的顺序目前与其实现中的元素顺序完全不同。我希望这些匹配,但无法找到ReSharper的方法。
这个接口目前也有区域,我想在实现中也匹配相同的区域。我知道区域通常不是一个好主意,但这是一个特殊的情况下,它是有帮助的,因为类有很多属性,涉及到一个屏幕的不同区域,并在MVVM模式的视图模型,它将很难分解成单独的类。
所以,作为一个例子,这将是我的界面:public interface IMyBusyViewModel
{
#region Screen Area 1
bool PropertyOne { get; set; }
string PropertyTwo { get; set; }
#endregion
#region Screen Area 2
bool PropertyThree { get; set; }
string PropertyFour { get; set; }
#endregion
}
这将是我当前的实现:
internal class MyBusyViewModel : IMyBusyViewModel
{
string PropertyTwo { get; set; }
string PropertyFour { get; set; }
bool PropertyOne { get; set; }
bool PropertyThree { get; set; }
}
这是我想要的执行结果:
internal class MyBusyViewModel : IMyBusyViewModel
{
#region Screen Area 1
bool PropertyOne { get; set; }
string PropertyTwo { get; set; }
#endregion
#region Screen Area 2
bool PropertyThree { get; set; }
string PropertyFour { get; set; }
#endregion
}
澄清一下,我不能使用这里描述的方法,因为界面中的项目是按照一种实际上不可能让ReSharper自动执行的方式排序的。
谢谢!
据我所知,没有自动重新排列重构。
但是你可以欺骗和删除你在MyBusyViewModel中的所有属性,之后resharper会在IMyBusyViewModel下给你的红色弯曲,把光标放在界面上,按ALT+Enter,然后按Enter,它将按顺序重新创建所有属性。