C# – Konvertiere Enum nach String und umgekehrt
Kleine Gedankenstütze, weil ich es immer und immer wieder vergesse. (Peinlich, ich weiß!)
Zunächst: Wie mache ich aus einem Enum einen String?
Enum.GetName( typeof(EnumType), EnumInstance);
Und wie wandle ich den String wieder zurück in einen eine Instanz vom dazugehörigen Enum?
(EnumType)Enum.Parse(typeof(EnumType), "<Name eines Elements von EnumType>", true);
done;
Wenn man mal versucht das in eine schöne extension method zu verpacken, stößt man auf eine sehr dumme Einschränkung. Denn man würde es ja als generische Methode implementieren und ein generic constraint setzen, dass nur Enums erlaubt sind. Dumm ist nur, dass generic constraints für System.Enum nicht zulässig sind 🙁
siehe: http://msmvps.com/blogs/jon_skeet/archive/2009/09/11/1722426.aspx