Перечислимое соглашение о присвоении имен - множественное число

Не уверенный, что протяжение фонового изображения возможно. Если Вы находите, что это не возможно, или не надежно во всех Ваших целевых браузерах, Вы могли попытаться использовать расширенный тег img с z-индексным набором ниже и набором положения к абсолютному так, чтобы другое содержание появилось сверху его.

Сообщают нам то, что Вы заканчиваете тем, что делали.

Редактирование: То, что я предложил, в основном, что находится в ссылке gabriel. Так попытка, что:)

249
задан Community 23 May 2017 в 02:18
поделиться

6 ответов

Microsoft рекомендует использовать единственное число для Enum s, если только Enum не представляет битовые поля (используйте FlagsAttribute ). См. Соглашения об именах перечислимых типов (подмножество Рекомендаций Microsoft по именованию ).

Чтобы ответить на ваше разъяснение, я не вижу ничего плохого в любом из следующего:

public enum OrderStatus { Pending, Fulfilled, Error };

public class SomeClass { 
    public OrderStatus OrderStatus { get; set; }
}

или

public enum OrderStatus { Pending, Fulfilled, Error };

public class SomeClass {
    public OrderStatus Status { get; set; }
}
313
ответ дан 23 November 2019 в 02:59
поделиться

Я начал называть перечисления во множественном числе, но с тех пор изменил их на единственное. Просто кажется, что имеет больше смысла в контексте того, где они используются.

enum Status { Unknown = 0, Incomplete, Ready }

Status myStatus = Status.Ready;

Сравните с:

Statuses myStatus = Statuses.Ready;

Я считаю, что форма единственного числа звучит более естественно в контексте. Мы согласны с тем, что при объявлении перечисления, которое происходит в одном месте, мы думаем «это группа каких-то», но при его использовании, предположительно во многих местах, мы думаем «это что-то одно» .

35
ответ дан 23 November 2019 в 02:59
поделиться

Ситуация никогда не применима к множественному числу.

enum показывает атрибут того или иного. Я приведу пример:

enum Humour
{
  Irony,
  Sarcasm,
  Slapstick,
  Nothing
}

У вас может быть один тип, но попробуйте представить его в множественном, а не во множественном числе:

Humour.Irony | Юмор. Сарказм

Вместо

Юмора {Ирония, Сарказм}

У вас есть чувство юмора, у вас нет чувства юмора.

24
ответ дан 23 November 2019 в 02:59
поделиться

В общем случае рекомендуется использовать единственное число, за исключением тех перечислений, к которым прикреплен атрибут [Flags] (и которые, следовательно, могут содержать битовые поля), которые должны быть множественными.

После прочтения отредактированного вами вопрос, у меня такое чувство, что вы можете подумать, что имя свойства или имя переменной должно отличаться от имени типа перечисления ... Это не так. Следующее совершенно нормально ...

  public enum Status { New, Edited, Approved, Cancelled, Closed }

  public class Order
  {
      private Status stat;
      public Status Status
      { 
         get { return stat; }
         set { stat = value; }
      }
  }
13
ответ дан 23 November 2019 в 02:59
поделиться

Наилучшая практика - используйте единственное число. У вас есть список элементов, составляющих Enum. Использование элемента в списке звучит странно, когда вы говорите Versions.1_0 . Имеет смысл сказать Version.1_0 , поскольку существует только одна версия 1_0.

6
ответ дан 23 November 2019 в 02:59
поделиться

В другом потоке Соглашение об именах C # для перечисления и сопоставления кто-то указал на то, что я считаю очень хорошей идеей:

«Я знаю свое предложение идет вразрез с соглашениями об именах .NET, но я лично префикс перечисления с помощью 'E' и флаги перечисления с 'F' (аналогично тому, как мы префикс интерфейсов с помощью 'I'). "

0
ответ дан 23 November 2019 в 02:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: