2011. október 28., péntek

Enum bűvölés (int to enum, enum to int, string to enum, enum to string)

Az Enum-okkal való munka nagyon kényelmes a .NET rendszerben, de olykor a nem rutinos hobbifejlesztő tanácstalanul áll miként lehet int-ből enum és enum-ból string, persze oda-vissza. Ez a rövid kis bejegyzés ezekhez ad segítséget. Lássunk is hozzá.
Az alap felsorolásunk a következő:
   1: public enum EmloyeeRole
   2: {
   3:   None = 0,
   4:   Manager = 1,
   5:   Admin = 2,
   6:   Operator = 3
   7: }
Enum-ból int
   1: EmloyeeRole role = EmloyeeRole.Manager;
   2: int roleInterger = (int)role;
Int-ből enum
   1: int roleInterger = 2;
   2: EmloyeeRole role = (EmloyeeRole)roleInterger;
String-ből enum
   1: string roleString = "Operator";
   2: EmloyeeRole role = 
   3:   (EmloyeeRole)Enum.Parse(typeof(EmloyeeRole), roleString);
Enum-ből string
   1: EmloyeeRole role = EmloyeeRole.Manager;
   2: string roleString = role.ToString();

Végezetül nézzük meg minként lehet végigmenni egy enum  összes elemén egy for vagy foreach ciklussal:
   1: foreach (EmloyeeRole er in Enum.GetValues(typeof(EmloyeeRole)))
   2: {
   3:     //ToDo
   4: }

1 megjegyzés :