(OK, voy a exponer el fondo de mi ignorancia aquí, por favor ser suave)No se puede convertir tipo 'System.Enum' a int
Antecedentes
Tengo un método que se ve (un poco) de esta manera:
public void AddLink(Enum enumVal)
{
string identifier = m_EnumInterpreter(enumVal);
AddLink(identifier);
}
el EnumInterpreter es un Func < Enum, string> que se pasa cuando se crea la clase padre.
Estoy usando Enum porque en este nivel no es de mi incumbencia, no me importa qué enumeración específica es. El código de llamada solo usa una enumeración (generada) para evitar cadenas mágicas.
Pregunta
Si el EnumInterpreter devuelve una cadena vacía, me gustaría lanzar una excepción con el valor real de enumVal. Pensé que solo podría convertir a int, pero el compilador no lo tendrá. ¿Qué estoy haciendo mal? (Por favor, no digas 'todo').
posible duplicado de [¿Cómo convertir de System.Enum a base entera?] (Http://stackoverflow.com/questions/908543/how-to-convert-from-system-enum-to-base-integer) – nawfal