Recuperar valor numérico con AppSettings.

Mediante la funcionalidad del gestor de configuraciones, podemos generar un archivo App.config en nuestro proyecto que nos permita almacenar valores de configuración en una estructura XML. Dichos valores posteriormente serán fácilmente recuperables mediante el empleo de  ConfigurationManager.AppSettings.

Aqui tendriamos un ejemplo de uso:

    using System.Configuration;

    public class Ejemplo
    {

        public Ejemplo()
        {
            string valorA = ConfigurationManager.AppSettings["Nombre1"];
            string valorB = ConfigurationManager.AppSettings["Nombre2"];
        }

    }

Esto funciona sin problemas cuando el dato a devolver es de tipo String, pero da error si la variable donde almacenar el valor es de tipo int:

int valorC = ConfigurationManager.AppSettings["Nombre3"];

Solucionarlo es sencillo con una simple conversión de tipo, pero es interesante realizar una pequeña diferenciación en la forma de hacerlo.

Tenemos diferentes maneras:

        int valorC = int.Parse(ConfigurationManager.AppSettings["Nombre3"]);
        int valorC = Convert.ToInt32(ConfigurationManager.AppSettings["Nombre3"]);

En ambas, si el valor viniera como null o vacío, nos devolvería una excepción, lo cual puede ser beneficioso para capturar un error.

Si el valor a recuperar no es crítico, podemos usar TryParse para evitar que nos de la excepción:

        int valorC;
        bool ok = int.TryParse(ConfigurationManager.AppSettings["Nombre3"], out valorC);

En este caso, al no obtenerse valor con AppSettings, el resultado obtenido será cero.

Ya es cuestión de ver que es lo más conveniente para cada cual.

 

1605 visitas.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *