Какие шаблоны ReSharper 4.0 для C # вы используете?
Давайте поделимся ими в следующем формате:
[Заглавие]
Необязательное описание
Ярлык: ярлык
Доступно в: [AvailabilitySetting]
// Resharper template code snippet
// comes here
Свойства макроса (если есть):
- Macro1 - Value - EditableOccurence
- Macro2 - Value - EditableOccurence
- Один макрос на ответ, пожалуйста!
- Вот несколько примеров для тестового устройства NUnit и тестового примера Standalone NUnit, которые описывают живые шаблоны в предлагаемом формате.
c#
templates
refactoring
resharper
Ринат Абдуллин
источник
источник
Ответы:
Простая лямбда
Так просто, так полезно - небольшая лямбда:
Ярлык : x
Доступно : C #, где разрешено выражение.
Макросы: нет.
источник
Реализовать метод Dispose (bool)
Реализация Dispose Pattern Джо Даффи
Ярлык: избавиться
Доступно в: файлах C # 2.0+, где разрешено объявление члена типа.
Свойства макроса :
источник
Создайте новый прибор модульного теста для некоторого типа
Ярлык: ntf
Доступно в файлах C # 2.0+, где разрешено объявление члена типа или объявление пространства имен.
Макросы:
источник
Проверьте, является ли строка пустой или пустой.
Если вы используете .Net 4, вы можете предпочесть использовать string.IsNullOrWhiteSpace ().
Ярлык : sne
Доступно на : C # 2.0+, где разрешено выражение.
Свойства макроса :
источник
Создать новый автономный модульный тестовый пример
Ярлык: ntc
Доступно в: файлах C # 2.0+, где разрешено объявление члена типа
Макросы:
источник
Объявите регистратор log4net для текущего типа.
Ярлык: журнал
Доступно в: файлах C # 2.0+, где разрешено объявление члена типа.
Свойства макроса :
источник
Тестовый модуль MS
Новый тест MS Test Unit с использованием синтаксиса AAA и соглашения об именах, найденных в Art Of Unit Testing
Ярлык: тестирование (или tst, или что угодно)
Доступно в файлах C # 2.0+, где разрешено объявление члена типа
Свойства макроса (если есть):
источник
Убедитесь, что переменная равна нулю
Ярлык: ifn
Доступно в файлах C # 2.0+
Проверьте, не является ли переменная нулевой
Ярлык: ifnn
Доступно в файлах C # 2.0+
источник
Написать StyleCop-совместимое резюме для конструктора класса
(если вы устали постоянно вводить длинную стандартную сводку для каждого конструктора, чтобы она соответствовала правилу StyleCop SA1642)
Ярлык: csum
Доступно на: C # 2.0+
Макросы:
источник
Assert.AreEqual
Простой шаблон для добавления утверждений в модульный тест
Ярлык : ae
Доступен в : в файлах C # 2.0+, где разрешен оператор
Свободная версия:
источник
Много лямбд
Создайте лямбда-выражение с другим объявлением переменной для упрощения вложенности.
Ярлык: la, lb, lc
Доступно в: файлах C # 3.0+, где разрешены выражения или предложения запроса.
la определяется как:
фунт определяется как:
lc определяется как:
Это похоже на Шон Кирон выше, за исключением того, что я определяю несколько живых лямбда-шаблонов для упрощения вложения лямбда-выражений. Чаще всего используется " la ", но при работе с такими выражениями могут быть полезны и другие:
источник
Ждать его...
Пауза для ввода данных пользователем перед завершением консольного приложения.
Ярлык: пауза
Доступно в: файлах C # 2.0+, где разрешен оператор
источник
Console.ReadKey(true);
и позволял нажимать любую клавишу.Генерация свойства зависимости
Создает свойство зависимости
Ярлык: dp
Доступно в: C # 3.0, где разрешено объявление члена
Свойства макроса (если есть):
PropertyName - Без макроса - # 3
PropertyType - Предполагаемый тип, ожидаемый на этом этапе - # 2
OwnerType - Содержит имя типа - нет редактируемого вхождения
источник
Уведомить об изменении свойства
Это мой любимый вариант, потому что я часто им пользуюсь, и он выполняет для меня много работы.
Ярлык : npc
Доступно на : C # 2.0+, где разрешено выражение.
Макросы :
Использование : Внутри такого установщика свойств:
Предполагается, что ваша поддерживающая переменная начинается с символа «_». Замените это тем, что вы используете. Также предполагается, что у вас есть метод изменения свойства примерно так:
На самом деле, версия, которую я использую, основана на лямбде (потому что я люблю свои лямбды!) И дает следующее. Принципы такие же, как указано выше.
Вот когда я не использую чрезвычайно элегантный и полезный PostSharp, чтобы выполнить всю работу INotifyPropertyChanged без каких-либо усилий .
источник
Быстрый ярлык ExpectedException
Просто быстрый ярлык для добавления к моим атрибутам модульного теста.
Ярлык : ее
Доступно в : Доступно в: файлах C # 2.0+, где разрешено объявление члена типа
источник
Сопоставление свойств AutoMapper
Ярлык: FM
Доступно в: файлах C # 2.0+, где разрешен оператор
Макросы:
Примечание:
Я оставляю лямбда-точку выключенной, чтобы я мог ударить. немедленно и получить недвижимость intellisense. Требуется AutoMapper ( http://automapper.codeplex.com/ ).
источник
Создать заглушку тестового примера для NUnit
Это может служить напоминанием (о функциональных возможностях для реализации или тестирования), которое отображается в средстве выполнения модульного теста (как и любой другой игнорируемый тест),
Ярлык: nts
Доступно в файлах C # 2.0+, в которых разрешено объявление члена типа
источник
Вызвать, если требуется
Полезно при разработке приложений WinForms, в которых метод должен вызываться из потоков, не относящихся к пользовательскому интерфейсу, а затем этот метод должен направлять вызов в поток пользовательского интерфейса.
Ярлык : inv
Доступно в : Оператор файлов C # 3.0+ разрешен
Макросы
Обычно вы используете этот шаблон в качестве первого оператора в данном методе, и результат будет примерно таким:
источник
Новый C # Guid
Создает новый экземпляр System.Guid, инициализированный новым сгенерированным значением guid
Ярлык: csguid Доступно в: в файлах C # 2.0+
Свойства макроса :
источник
Метод тестирования MSTest
Это немного неубедительно, но полезно. Надеюсь, кому-то это пригодится.
Ярлык: testMethod
Доступно в: C # 2.0
источник
Метод установки NUnit
Ярлык: настройка
Доступно в: Доступно в: файлах C # 2.0+, где разрешено объявление члена типа
источник
Метод NUnit Teardown
Ярлык: teardown
Доступно: Доступно: в файлах C # 2.0+, где разрешено объявление члена типа
источник
Создайте проверку работоспособности, чтобы гарантировать, что аргумент никогда не будет нулевым
Ярлык: eann
Доступно в: файлах C # 2.0+, где разрешен оператор типа
Макросы:
Примечания. Хотя этот фрагмент нацелен на библиотеку .NET Lokad.Shared с открытым исходным кодом , его можно легко адаптировать для любого другого типа проверки аргументов.
источник
Новый COM-класс
Ярлык : comclass
Доступно в : файлах C # 2.0+, где разрешено объявление члена типа или объявление пространства имен.
Макросы
источник
Подтверждение вызова не требуется
Полезно при разработке приложений WinForms, когда вы хотите быть уверены, что код выполняется в правильном потоке для данного элемента. Обратите внимание, что
Control
файлыISynchronizeInvoke
.Ярлык : ани
Доступно в : Допускается оператор файлов C # 2.0+
Макросы
System.ComponentModel.ISynchronizeInvoke
источник
Trace - Writeline, с форматом
Очень простой шаблон для добавления трассировки с форматированной строкой (например, Debug.WriteLine уже поддерживает).
Ярлык: twlf
Доступно в файлах C # 2.0+, где разрешен оператор
Свойства макроса:
value
- EditableOccurence"{0}"
- EditableOccurenceисточник
Новый изолятор Typemock подделка
Ярлык : fake
Доступно в : [в файлах C # 2.0, где разрешено выражение]
$ TYPE $ $ Name $ Fake = Isolate.Fake.Instance ();
Isolate.WhenCalled (() => $ Name $ Fake.)
Свойства макроса:
* $ TYPE $ - Предложить тип для новой переменной
* $ Name $ - Значение другой переменной ( Тип ) с первым символом в нижнем регистре
источник
Поскольку сейчас я работаю с Unity, я придумал несколько, чтобы немного облегчить себе жизнь:
Тип Псевдоним
Ярлык : ta
Доступен в : * .xml; * .config
Объявление типа
Это тип без имени и без аргументов
Ярлык : tp
Доступно в : * .xml; * .config
Объявление типа (с именем)
Это тип с именем и без аргументов
Ярлык : tn
Доступно в : * .xml; * .config
Объявление типа с конструктором
Это тип с именем и без аргументов
Ярлык : tpc
Доступно в : * .xml; * .config
и т.д....
источник
Блок конфигурации XML log4net
Вы можете напрямую импортировать шаблон:
источник
Сделать метод виртуальным
Добавляет виртуальное ключевое слово. Особенно полезно при использовании NHibernate, EF или аналогичной инфраструктуры, где методы и / или свойства должны быть виртуальными, чтобы обеспечить ленивую загрузку или проксирование.
Ярлык: v
Доступно в: файле C # 2.0+, где разрешено объявление члена типа
Хитрость здесь в том, что после виртуального стоит пробел, который может быть трудно увидеть выше. Фактический шаблон - это «виртуальный $ END $» с включенным переформатированным кодом. Это позволяет вам перейти к точке вставки ниже (обозначенной |) и ввести v:
источник