Buscar..


Leyendo el archivo app.config en un proyecto Xamarin.Forms Xaml

Si bien cada plataforma móvil ofrece su propia API de administración de configuraciones, no hay formas integradas de leer configuraciones desde un buen archivo antiguo de .NET estilo app.config xml; Esto se debe a una serie de buenas razones, en particular la api de administración de configuración de .net framework en el lado pesado, y cada plataforma tiene su propia api de sistema de archivos.

Así que construimos una biblioteca PCLAppConfig simple, bien empaquetada en nuget para su consumo inmediato.

Esta biblioteca hace uso de la hermosa biblioteca PCLStorage

En este ejemplo, se supone que está desarrollando un proyecto Xamarin.Forms Xaml, en el que tendría que acceder a la configuración desde su modelo de vista compartido.

  1. Inicialice ConfigurationManager.AppSettings en cada uno de los proyectos de su plataforma, justo después de la declaración 'Xamarin.Forms.Forms.Init', como se indica a continuación:

iOS (AppDelegate.cs)

global::Xamarin.Forms.Forms.Init();
ConfigurationManager.Initialise(PCLAppConfig.FileSystemStream.PortableStream.Current);
LoadApplication(new App());

Android (MainActivity.cs)

global::Xamarin.Forms.Forms.Init(this, bundle);
ConfigurationManager.Initialise(PCLAppConfig.FileSystemStream.PortableStream.Current);
LoadApplication(new App());

UWP / Windows 8.1 / WP 8.1 (App.xaml.cs)

Xamarin.Forms.Forms.Init(e);
ConfigurationManager.Initialise(PCLAppConfig.FileSystemStream.PortableStream.Current);
  1. Agregue un archivo app.config a su proyecto PCL compartido y agregue sus entradas de configuración de aplicaciones, como haría con cualquier archivo app.config
<configuration>
    <appSettings>
        <add key="config.text" value="hello from app.settings!" />
    </appSettings>
</configuration>
  1. Agregue este archivo PCL app.config como un archivo vinculado en todos sus proyectos de plataforma. Para Android, asegúrese de configurar la acción de compilación en 'AndroidAsset' , para UWP configure la acción de compilación en 'Contenido'

  2. Acceda a su configuración: ConfigurationManager.AppSettings["config.text"];



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow