ReSharper 7.1 форматирование инициализатора объекта

Когда делаете что-то вроде этого:

MyObject tmp = new MyObject();
tmp.Prop = "Hello";

ReSharper говорит мне "Использовать инициализатор объекта", поэтому я позволил ему переформатировать код, и я получил что-то вроде этого:

MyObject tmp = new MyObject {
                                Prop = "Hello"
                            };

Тем не менее, я хотел бы, чтобы первая скобка была на второй строке, вот так:

MyObject tmp = new MyObject 
                            {
                                Prop = "Hello"
                            };

Но я нигде не могу найти никаких настроек для этого. У меня есть настройка "C# -> Стиль форматирования -> Макеты скобок -> Массив и инициализатор объекта", установленный на "На следующей строке (стиль BSD)"

Могут ли быть какие-то другие настройки, мешающие этому, мешающие форматированию, которое я хочу?

Редактировать: если я вручную отформатирую код, как я хочу, он будет автоматически переформатирован (в неправильный формат), когда я введу точку с запятой.

2 ответа

Решение

Итак, я наконец нашел параметр, который мешал форматированию:

Иногда мне нужно установить одну и ту же опцию в VS и Resharper.

В Resharper это как вы сказали:

C# -> Formatting Style -> Braces Layout -> Array and object initializer' set to 'At next line (BSD style)

В Visual Studio:

Tools -> Options... -> Text Editor -> C# -> Formatting -> New Lines -> Place open brace on new line for object initialzers
Другие вопросы по тегам