none
Una consulta, ¿Cómo obtengo el valor por defecto de app.config en su tipo correcto? (explico) RRS feed

  • Pregunta

  • Suponiendo que en el archivo de configuración, Tamano es de tipo size. Para obtener la conversión correcta usaría:

    SizeConverter y ConvertFromString, para obtener el tipo Size correspondiente a dicho valor. Hasta allí todo OK.

    -----------------------------------------------------

    Pero cómo sería si declaro en el app.config un campo con un tipo enumerado de usuario. Por ejemplo

    MiColor de tipo Colores = Azul

    Colores está definido así:

    Enum Colores

    Azul

    Rojo

    End Enum

    Al obtener el valor por defecto desde app.config lo obtengo así:

    My.Settings.Properties("MiColor").DefaultValue

    Pero creo que lo anterior retorna el valor "Azul" como una cadena.

    ¿Cómo convierto ese valor en su tipo enumerado correcto?


    domingo, 3 de enero de 2021 4:20

Respuestas

Todas las respuestas

  • Puedes usar Enum.Parse o Enum.TryParse.

    Dim miColor As Colores = Enum.Parse(Of Colores)(My.Settings.Properties("MiColor").DefaultValue)

    Si tienes Option Strict On, acuérdate de añadir también una llamada a CType.

    • Propuesto como respuesta Sergio Parra domingo, 3 de enero de 2021 12:46
    • Marcado como respuesta James2016-2 domingo, 3 de enero de 2021 15:08
    domingo, 3 de enero de 2021 8:28
  • Hola James,

    Gracias por confirmar que se ha encontrado una solución a la consulta realizada.

    Gracias por usar los foros de MSDN.

    Eric Ruiz

    ____________________________

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

    Si tiene algún cumplido o reclamo sobre el soporte de MSDN siéntase en la libertad de contactar MSDNFSF@microsoft.com.

    lunes, 4 de enero de 2021 15:07
    Moderador