Leyendo un archivo de configuración en Xamarin Forms




¡Que tal estimados lectores! Los archivos de configuración son muy importantes en el desarrollo de software, ante todo nos brindan seguridad para poder almacenar información relevante (keys, urls para web services, etc) asi podremos evitar hacer uso del hardcode en nuestro código de las aplicaciones, haremos uso de un nuget llamado PCLAppConfig.

Preparando nuestro proyecto
Vamos a crear un nuevo proyecto de xamarin forms, y sobre todo hay que actualizar los paquetes nuget (desde la solución) que tengamos, solo por mero proceso no es indispensable.




Instalando el nuget
Lo siguiente es buscar el nuget PCLAppConfig e instalarlo en todos los proyectos de la solución como a continuación vemos.



Configuración en la clase App.cs

Ahora debemos hacer la inicialización de nuestro nuget, lo que me agrado es que solo hay que hacer una sola configuración (algunos nugets sabemos se configuran en cada plataforma).
Antes de esto casi lo olvido, necesitamos crear un archivo con extensión config dentro de nuestro proyecto de libreria de clases, en mi caso lo he nombrado App.config y con un Build Action: EmbeddedResource





El código de inicialización es el siguiente:

if (ConfigurationManager.AppSettings == null)
{
     Assembly assembly = typeof(App).GetTypeInfo().Assembly;
     ConfigurationManager.Initialise(assembly.GetManifestResourceStream("NombreDeTuProyecto.NombreDeArchivo"));
}      

Si hasta ahora todo va bien debes tener algo asi:


No olvides establecer el nombre de tu librería de NetStandard y el nombre de tu archivo de configuración, si no de donde lees las keys después XD


Definición y lectura de las keys de nuestro archivo de configuración
Dentro de nuestro archivo de configuración hay que definir las keys que queremos leer posteriormente en la siguiente estructura, puedes definir tantas keys como necesites.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>    
    <add key="Key1" value="Horneando" />
    <add key="Key2" value="Código" />
    <add key="Key3" value="con Xamarin Forms" />
  </appSettings>
</configuration>    

Ahora en nuestra página de ejemplo que viene por default vamos a leer las keys que hemos creado, la instrucción es:
ConfigurationManager.AppSettings["NombreDeTuKey"];

Pata mostrar el valor de nuestras keys después de leerlas desde el archivo de configuración usaremos MVVM como patrón de diseño.



Resultados finales
Y así con estos simples pasos y gracias a este genial nuget, podremos ver un resultado esperado como el siguiente, espero la entrada sea de utilidad para ti, comparte en tus grupos de desarrollo móvil para poder llegar a más desarrolladores.




Comentarios

  1. Tengo este problema:
    'Value cannot be null.
    Parameter name: stream'

    En esta linea:
    ConfigurationManager.Initialise(assembly.GetManifestResourceStream("MiProyecto.App.config"));

    ResponderEliminar

Publicar un comentario

¡Tú! también puedes aportar con tu comentario

Entradas populares de este blog

Generando pases para wallet (iOS, Android) con .NET y C#

Política de privacidad un simple developer

Clean code, ¿Qué es? ¿Cómo usarlo?