Resharper 6 создает автоматическое свойство по умолчанию

Когда я пишу код и мне нужно новое свойство, я просто пишу имя свойства, поскольку оно уже существует, и выбираю действие в меню: create  новое свойство в resharper

Проблема в том, что он генерирует такой код:

 protected int SomeNewProperty
    {
        get { throw new System.NotImplementedException(); }
        set { throw new System.NotImplementedException(); }
    }

Поэтому мне нужно пойти туда и вручную настроить это (на самом деле я предпочитаю выбрать «Создать поле» в меню и изменить его на автоматическое свойство). Во всяком случае, я подумал, может быть, есть способ изменить поведение по умолчанию «Создать свойство», чтобы оно мгновенно создавало автоматическое свойство?

Обновить

В Resharper 8 авто свойства доступны и могут быть установлены по умолчанию!

Экран параметров Resharper 8


person Giedrius    schedule 28.09.2011    source источник
comment
Я заметил, что для этого есть открытый запрос функции: youtrack.jetbrains.com/issue/RSRP-191556. Может стоит проголосовать!   -  person JP.    schedule 29.04.2012


Ответы (4)


Как только вы нажмете Создать свойство, он остановится на типе. Нажмите tab, и вы получите контекстное меню с возможностью использования Auto property.

введите здесь описание изображения

person Rickard    schedule 28.09.2011
comment
достаточно близко, если действительно невозможно сохранить это поведение по умолчанию, я отмечу это как ответ. - person Giedrius; 28.09.2011
comment
Как показано ниже, можно изменить только то, что делает тело члена по умолчанию. Дело в том, что вы, вероятно, не хотите постоянно иметь свойство auto. Тогда это контекстное меню очень удобно. - person Rickard; 28.09.2011
comment
Просто наткнулся на это, никогда не знал, что это существует! Та - person Rippo; 05.12.2012

Вы не можете сделать это в R# (по крайней мере, в v6). То есть создайте псевдосвойство и попросите resharper сгенерировать заглушку Auto Property.

Вы по-прежнему можете использовать более совершенный метод, который использует Visual Studio. Введите новое свойство, которое будет отображаться как синтаксическая ошибка, а затем CTRL + . показывает мини-меню VS. Затем просто нажмите enter и работа будет выполнена.

Это не приведет вас к файлу класса, что тоже может отвлекать. Чтобы использовать приведенный выше ярлык, вам даже не нужно наводить курсор на неработающее имя свойства.

Так что это лучше, чем метод, описанный Рикардом, поскольку он быстрее и меньше отвлекает вас от кода, который вы пишете.

person Valamas    schedule 10.10.2011
comment
это отличное предложение, это должен быть ответ. resharper должен работать так. - person Jim; 11.09.2012
comment
Хорошая вещь. Не могу поверить, что R# этого не делает. Вероятно, это должно быть частью принятого ответа. - person Coxy; 20.02.2015

Существует возможность изменить стиль кузова по умолчанию.

Тем не менее, самое близкое, что вы можете получить, это

    protected int SomeProperty
    {
        get { return 0; }
        set { }
    }

Параметры решарпера

person Jerry Liang    schedule 28.09.2011

Существует фрагмент по умолчанию, который поставляется с Visual Studio под названием «реквизит». Просто введите его, нажмите , введите имя типа и дайте ему имя. Сделано и сделано.

Я знаю, что это не отвечает на ваш вопрос с точки зрения Resharper, но это функциональность, уже предоставляемая Visual Studio IDE.

person A.R.    schedule 28.09.2011
comment
Ну, проблема в том, что мне нужно сначала перейти к месту, где будет создано свойство, и я ненавижу это делать. - person Giedrius; 28.09.2011
comment
да, работать хреново. Я обычно нанимаю программиста для таких вещей =) - person A.R.; 28.09.2011
comment
@MikeCole Подход с использованием фрагментов более эффективен. Спасибо что подметил это. - person A.R.; 22.02.2013