// ===++===
//
// OrtizOL
//
// ===--===
/*============================================================
//
// Clase: DemoGetNames.cs
//
// Propósito: Demostración del uso del método GetNames
// de la clase Enum para recuprar los nombres de las
// constantes de una enumeración.
//
============================================================*/
using System;
namespace Articulos.Cap03
{
internal enum EstadoLlegada
{
Desconocido = -3,
Retardado = -1,
ATiempo = 0,
Temprano = 1
};
internal class DemoGetNames
{
public static void Main()
{
// Arreglo de string con los nombres de la enumeración `EstadoLlegada`:
string[] nombresConstantes = Enum.GetNames(typeof(EstadoLlegada));
// Ordenamiento ascendente de los elementos del arreglo:
Array.Sort(nombresConstantes);
// Resultados en la salida estándar:
Console.WriteLine("Miembros de `{0}`.", typeof(EstadoLlegada).Name);
// Iteración por miembros de la iteración:
foreach(string nombreConstante in nombresConstantes)
{
// Obtiene el valor numérico de la constante:
EstadoLlegada tempEstado = (EstadoLlegada) Enum.Parse(typeof(EstadoLlegada), nombreConstante);
// Muestra en la salida estándar el nombre de la constante y su valor:
Console.WriteLine("\t{0} ({0:D})",tempEstado);
}
}
}
}
Ly8gPT09Kys9PT0KLy8KLy8gICAgT3J0aXpPTAovLwovLyA9PT0tLT09PQovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQovLwovLyBDbGFzZTogRGVtb0dldE5hbWVzLmNzCi8vCi8vIFByb3DDs3NpdG86IERlbW9zdHJhY2nDs24gZGVsIHVzbyBkZWwgbcOpdG9kbyBHZXROYW1lcyAKLy8gZGUgbGEgY2xhc2UgRW51bSBwYXJhIHJlY3VwcmFyIGxvcyBub21icmVzIGRlIGxhcyAKLy8gY29uc3RhbnRlcyBkZSB1bmEgZW51bWVyYWNpw7NuLgovLwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoKdXNpbmcgU3lzdGVtOwoKbmFtZXNwYWNlIEFydGljdWxvcy5DYXAwMwp7CiAgICBpbnRlcm5hbCBlbnVtIEVzdGFkb0xsZWdhZGEKICAgIHsKICAgICAgICBEZXNjb25vY2lkbyA9IC0zLAogICAgICAgIFJldGFyZGFkbyA9IC0xLAogICAgICAgIEFUaWVtcG8gPSAwLAogICAgICAgIFRlbXByYW5vID0gMQogICAgfTsKICAgIAogICAgaW50ZXJuYWwgY2xhc3MgRGVtb0dldE5hbWVzCiAgICB7CiAgICAgICAgcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQogICAgICAgIHsKICAgICAgICAgICAgLy8gQXJyZWdsbyBkZSBzdHJpbmcgY29uIGxvcyBub21icmVzIGRlIGxhIGVudW1lcmFjacOzbiBgRXN0YWRvTGxlZ2FkYWA6CiAgICAgICAgICAgIHN0cmluZ1tdIG5vbWJyZXNDb25zdGFudGVzID0gRW51bS5HZXROYW1lcyh0eXBlb2YoRXN0YWRvTGxlZ2FkYSkpOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gT3JkZW5hbWllbnRvIGFzY2VuZGVudGUgZGUgbG9zIGVsZW1lbnRvcyBkZWwgYXJyZWdsbzoKICAgICAgICAgICAgQXJyYXkuU29ydChub21icmVzQ29uc3RhbnRlcyk7CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBSZXN1bHRhZG9zIGVuIGxhIHNhbGlkYSBlc3TDoW5kYXI6CiAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCJNaWVtYnJvcyBkZSBgezB9YC4iLCB0eXBlb2YoRXN0YWRvTGxlZ2FkYSkuTmFtZSk7CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBJdGVyYWNpw7NuIHBvciBtaWVtYnJvcyBkZSBsYSBpdGVyYWNpw7NuOgogICAgICAgICAgICBmb3JlYWNoKHN0cmluZyBub21icmVDb25zdGFudGUgaW4gbm9tYnJlc0NvbnN0YW50ZXMpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIC8vIE9idGllbmUgZWwgdmFsb3IgbnVtw6lyaWNvIGRlIGxhIGNvbnN0YW50ZToKICAgICAgICAgICAgICAgIEVzdGFkb0xsZWdhZGEgdGVtcEVzdGFkbyA9IChFc3RhZG9MbGVnYWRhKSBFbnVtLlBhcnNlKHR5cGVvZihFc3RhZG9MbGVnYWRhKSwgbm9tYnJlQ29uc3RhbnRlKTsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgLy8gTXVlc3RyYSBlbiBsYSBzYWxpZGEgZXN0w6FuZGFyIGVsIG5vbWJyZSBkZSBsYSBjb25zdGFudGUgeSBzdSB2YWxvcjoKICAgICAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCJcdHswfSAoezA6RH0pIix0ZW1wRXN0YWRvKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQ==