Действительно ли возможно иметь компилятор, автоматически преобразовывают мои Перечислимые значения в строки, таким образом, я могу постараться не явно называть метод ToString каждым разом. Вот пример того, что я хотел бы сделать:
enum Rank { A, B, C }
Rank myRank = Rank.A;
string myString = Rank.A; // Error: Cannot implicitly convert type 'Rank' to 'string'
string myString2 = Rank.A.ToString(); // OK: but is extra work
Нет. Перечисление - это собственный тип, если вы хотите преобразовать его во что-то еще, вам нужно поработать.
Однако, в зависимости от того, что вы с ним делаете, некоторые задачи автоматически вызывают ToString () для вас. Например, вы можете сделать:
Console.Writeline(Rank.A);
Нет, но, по крайней мере, вы можете делать что-то с перечислениями, которые будут вызывать их методы ToString ()
, когда вам может понадобиться использовать их строковое значение, например:
Console.WriteLine(Rank.A); //prints "A".
Правильный синтаксис должен быть
myRank.ToString("F");