Изменение заглушек свойств для рефакторинга интерфейса - PullRequest
1 голос
/ 09 апреля 2010

Можно ли изменить заглушку, используемую для реализации интерфейсов в Visual Studio 2008?

Например, когда я выбираю
Implement interface 'IMyInterface'
или
Explicitly implement interface 'IMyInterface'

Вместо ряда свойств, которые выглядят так:

    public string Comment
    {
        get
        {
            throw new NotImplementedException();
        }
        set
        {
            throw new NotImplementedException();
        }
    }

Я бы хотел, чтобы мои свойства использовали автоматически реализованные свойства C # 3.0 и выглядели так:

    public string Comment {get;set;}

Я хочу сделать это, чтобы избежать превращения этого интерфейса в абстрактный класс.

Я просмотрел фрагменты в папке Visual Studio, но не нашел ничего подходящего. Я также гуглил и искал ТАК, и ничего не нашел.

Если это невозможно, у кого-нибудь есть макрос, который я могу украсть?

Спасибо.

edit: Я пытался редактировать фрагменты, расположенные в C:\Program Files\Microsoft Visual Studio 9.0\VC#\Snippets\1033\Refactoring, но эти изменения не меняют реализацию. Я попытался внести изменения, а затем снова открыть Visual Studio, которая не работает. Я что-то здесь не так делаю?

1 Ответ

3 голосов
/ 04 июня 2010

Похоже, ReSharper - единственный способ для меня это сделать.

Я только что вернулся к этой проблеме и обнаружил, что вы можете изменить фрагмент, используемый Visual Studio:

Вы можете изменить заглушку, используемую Visual Studio для реализации интерфейсов (как явных, так и явных), отредактировав файл:
Microsoft Visual Studio 10.0\VC#\Snippets\1033\Refactoring\PropertyStub.snippet

Я изменил сегмент кода в моем файле на:

<Code Language="csharp">
    <![CDATA[ $signature$ { $GetterAccessibility$ get; $SetterAccessibility$ set;} $end$]]>
</Code>
...