ReSharper жалуется на прописные "ID" в члене "EntityID"

У меня есть свойство EntityID в классе. Resharper (5.1) говорит

Имя "EntityID" не соответствует правилу "Методы, свойства и события". Рекомендуемое имя - "EntityId".

Но IMHO в соответствии с соглашениями об именах в Руководства по дизайну для разработчиков библиотеки классов. "EntityID" должен быть отлично:

  • Не используйте аббревиатуры, которые обычно не принимаются в вычислениях поле.
  • При необходимости используйте известные аббревиатуры, чтобы заменить длинную фразу имена. Например, используйте пользовательский интерфейс пользователя Интерфейс и OLAP для On-line Аналитическая обработка.
  • При использовании сокращений используйте случай Паскаля или случай верблюда для акронимов больше, чем два символа. Например, используйте HtmlButton или htmlButton. Однако вы должны капитализировать аббревиатуры, которые состоят только из двух символов, таких как как System.IO вместо System.Io.
  • Не используйте сокращения в идентификаторах или именах параметров. если ты должен использовать сокращения, использовать случай верблюда для сокращений, которые состоят из более чем два символа, даже если это противоречит стандартной аббревиатуре слова

* Обновление: * В последней версии руководства также говорится:

Используйте оба символа двухсимвольных акронимов, кроме первое слово идентификатора на верблюжьей основе. Свойство с именем DBRate является примером краткого сокращения (DB), используемого как первое слово Паскаля идентификатор. Параметр, названный ioChannel - пример короткого акроним (IO), используемый в качестве первого слова идентификатор с верблюжьей головкой.

Я правильно понимаю правила? Если да, как я могу заставить ReSharper принять "EntityID" (хорошо известный аббревиатура из двух букв), но отклонить "HTMLReader" (это должен быть HtmlReader).

Ответ 1

Вы хотите придерживаться рекомендаций Руководства по дизайну рамок или хотите использовать заглавные ID независимо?

последняя версия рекомендаций позволяет:

Два аббревиатуры, которые можно использовать в идентификаторах ID и OK. В Идентификаторы с паскалем должны отображаются как ID и OK. Если используется как первое слово в верблюжьей шкуре идентификатор, они должны отображаться как IDи OK соответственно.

Итак, кажется, что ReSharper корректен в случае ID.

Из интереса, ReSharper также рекомендует, чтобы два символьных аббревиатуры соответствовали тем же правилам обсадной колонны. Это противоречит рекомендациям: "Используйте оба символа двухсимвольных акронимов, кроме первого слова идентификатора с верблюжьей шкурой".

Ответ 2

Если вы хотите, чтобы ReSharper имел "ID" в качестве допустимой аббревиатуры для "Идентификация", просто выберите свойство, нажмите "Alt-Enter", а затем выберите "Добавить" ID "в список сокращений" из контекста ReSharper- меню.

Ответ 3

Простейшим решением было бы перейти к параметрам ReSharper в разделе "Стиль имен С#", убедитесь, что выбрано "Переопределить общие настройки", а затем дважды щелкните "Методы, свойства и события". Нажмите "Добавить", чтобы добавить новый, и установите его в "UpperCamelCase" с именем "Суффикс имени".

Добавьте дополнительные суффиксы, как вам нравится.

Вы также можете сделать это с помощью кнопки "Дополнительные настройки..." на странице "Стиль имен С#", что дает вам гораздо большую гибкость, но я бы не стал с этим беспокоиться...

Ответ 4

Как насчет "Добавить" ID "в список сокращений"??