停止ReSharper格式化C#字段属性

时间:2018-04-15 11:29:32

标签: c# resharper code-formatting

在Unity中,属性通常用于格式化组件的检查器窗口。为了使代码看起来整洁,我的代码看起来像这样:

[Header("Items")]
[SerializeField] private NamedAction[] items;

[Space]

[Header("References")]
[SerializeField] private Button button;
[SerializeField] private RectTransform template;
[SerializeField] private RectTransform templateItem;

然而,ReSharper希望将其格式化为:

[Header("Items")] [SerializeField] private NamedAction[] items;

[Space] [Header("References")] [SerializeField] private Button button;
[SerializeField] private RectTransform template;
[SerializeField] private RectTransform templateItem;

这会损害可读性,尤其是在更复杂的组件中。我想知道哪个选项可用于禁用此行为。

有一个选项“换行和换行 - >其他 - >将字段属性放在同一行”,但这仍然会影响我的属性格式。我想告诉ReSharper永远不要碰我的田地属性。

1 个答案:

答案 0 :(得分:1)

我今天也遇到了同样的问题,我唯一能找到的解决方案就是完全关闭这些行的格式化程序。

这可以通过

实现
// @formatter:off
[Header("Items")]
[SerializeField] private NamedAction[] items;

[Space]

[Header("References")]
[SerializeField] private Button button;
[SerializeField] private RectTransform template;
[SerializeField] private RectTransform templateItem;
// @formatter:on

但是执行此操作会将未格式化的字段推到文件底部,但我尚未找到解决方案。我正在积极地使用ReSharper的文件布局。如果找到该部分的解决方案,我将更新此答案。