Convertir un String en enumerado con C#
Adiós al tradicional método de convertir un string en enum utilizando un eterno switch en C#… Viejos tiempos en los que debíamos hacer algo similar a…
switch(saludo)
{case “hola”: return Saludos.Hola;
case “hello”: return Saludos.Hello;}
¿Quién no ha hecho este tipo de aberración alguna vez durante su vida como desarrollador? Todos…
Afortunadamente me he topado con un sistema muy interesante, que prácticamente podemos definir como evidente (¿Cómo no se me pudo ocurrir antes?) para realizar la conversión sin tener que hacer uso de un switch del tamaño de 20 folios A4. Tan sencillo como ésto:
public Enum Saludos {Hola,Hello,Hi};
public Saludos GetSaludo(string saludo)
{return (Saludos)Enum.Parse(typeof(Saludos), saludo);
}
De éste modo realizaremos la conversión de manera sencilla y práctica, con una única línea de código.














Prueba:
return (Saludos)Enum.Parse(typeof(Saludos), 55);
Devuelve 55 y debería dar error!
Aberracion??? Eso es programar chaval!!! que la pela es la pela y no se puede perder el tiempo programando como dicen los libros!! so cabron.
Jajajaja que gran respuesta xDD. Es cierto, la gente se centra en soluciones “de libro”, pero aportaba una solución extra y más práctica que puedes encapsular
.
So cabrón!! xDDD