Мой вопрос лучше всего иллюстрируется на примере.
Предположим, у меня есть перечисление:
public enum ArrowDirection
{
North,
South,
East,
West
}
Я хочу связать единичный вектор, соответствующий каждому направлению, с этим направлением. Например, я хочу что-то, что будет возвращать (0, 1) для Севера, (-1, 0) для Запада и т. Д. Я знаю, что в Java вы можете объявить метод внутри перечисления, который может обеспечить эту функциональность.
Мое текущее решение состоит в том, чтобы иметь статический метод - внутри класса, который определяет перечисление - который возвращает вектор, соответствующий переданному в ArrowDirection (метод использует HashTable для выполнения поиска, но это не очень важно). Это кажется ... нечистым.
Вопрос:
Есть ли передовое решение для хранения дополнительной информации, соответствующей перечислению в .NET?