23

我发现了这个问题的其他重复项,但它们很旧,并且解决方案不适用于 R#8,因为设置已更改。

当我进行匿名类型或对象初始化(任何类型的带有内容的大括号缩进)时,我希望它是 BSD 风格:

var test = new CustomType
{
    Prop1 = value1,
    Prop2 = value2,
};

...我将 R# Options / Code Editing / C# / Formatting Style / Braces Layout / Array and object initializer 设置为“在下一行(BSD 样式)”。但是,当我在添加新的花括号后按 Enter 键时,我仍然会得到以下结果:

var test = new CustomType
           {
               Prop1 = value1,
               Prop2 = value2,
           };

...我相信这是 Whitesmiths 风格。

我需要做什么才能让 R# 8 不为初始化程序缩进大括号?

4

2 回答 2

40

有两种设置共同控制这一点:

  • 数组、对象和集合初始值设定项:false

选项1

  • 数组和对象初始化器:BSD 风格

选项2

从 OP 更新

可能必须为“这台计算机”设置这些设置,而不仅仅是个人或团队共享选项。

于 2013-11-27T15:47:57.013 回答
0

就我而言,我按照接受的答案中的说明进行操作,但 ReSharper 仍然没有按照我预期的方式(或答案所说的方式)格式化对象初始化器。经过大量实验后,我发现 StyleCop 扩展中的设置驱动了格式设置,而不是团队共享设置文件中的设置。我必须禁用 StyleCop 扩展设置层才能产生所需的格式。

这是ReSharper --> Manage Options菜单的屏幕截图: ReSharper 设置图层

于 2018-07-24T11:33:43.717 回答