Рассмотрим следующий перечисление:Преобразование CSV из перечислений флагов и наоборот
[Flags]
public enum MyEnum
{
Option1 = 0,
Option2 = 1,
Option3 = 2,
Option4 = 4
}
Есть ли способ, в котором я могу получить строку, эквивалентную (не значение) в виде строки CSV? Обычно я могу использовать функцию Enum.GetName для преобразования типа в строковое представление, однако, если вы используете комбинацию, это возвращает значение null.
Поэтому в основном я хотел бы преобразовать:
var options = MyEnum.Option1 | MyEnum.Option3;
в
"Option1, Option3"
Тогда я хотел бы иметь возможность конвертировать "ОПЦИЯ1, OPTION3" назад MyEnum.Option1 | MyEnum.Option2
.
Предложения?
Верно ли «enum.GetName» null, только когда его комбинация значений или все время? – Kratz
@ Kratz - Извините, когда это комбинация, я обновляю свой пост, поскольку на самом деле это не ясно. – James