Должны ли перечисления размещаться в отдельном файле или в другом классе?

В настоящее время у меня есть файл класса со следующим перечислением:

using System;

namespace Helper
{
    public enum ProcessType
    {
        Word = 0,
        Adobe = 1,
    }
}

Или мне нужно включить перечисление в класс, в котором он используется?

Я заметил, что Microsoft создает новый файл класса для DockStyle:

using System;
using System.ComponentModel;
using System.Drawing.Design;

namespace System.Windows.Forms
{
    public enum DockStyle
    {
        None = 0, 
        Top = 1,
        Bottom = 2,
        Left = 3,
        Right = 4,.
        Fill = 5,
    }
}

Ответы

Ответ 1

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

Ответ 2

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

Ответ 3

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