//Descarga de Pirineos las siguientes tablas al respectivo técnico con su usuario y contraseña. public async void SincronizarDatos(int persona, string contraseña) { Conecta Conexion = new Conecta(); try { //Lista las Entidades del Modelo List <string> Entidad = ((Entidades[])Enum.GetValues(typeof(Entidades))).Select(c => c.ToString()).ToList(); var list = datos.GetListAticulos(); string ruta = null; foreach (var Enti in Entidad) { Variables.Entidad = Enti; ruta = "api/Descarga/" + Enti; if (Variables.ErrorTransDatos != 1) { if (list.Count() == 0) { switch (Enti) { case "ListarGenerales": await Task.Run(async() => { await Conexion.GetDatosAsync <Generales>(ruta); }); break; case "ListarFormaPago": await Task.Run(async() => { await Conexion.GetDatosAsync <Forma_Pago>(ruta); }); break; case "ListarPersonal": await Task.Run(async() => { await Conexion.GetDatosAsync <Personal>(ruta); }); break; case "ListarProvincias": await Task.Run(async() => { await Conexion.GetDatosAsync <Provincias>(ruta); }); break; case "ListarPaises": await Task.Run(async() => { await Conexion.GetDatosAsync <Pais>(ruta); }); break; case "ListarIva": await Task.Run(async() => { await Conexion.GetDatosAsync <Iva>(ruta); }); break; case "ListarRegimenIva": await Task.Run(async() => { await Conexion.GetDatosAsync <Regimen_IVA>(ruta); }); break; case "ListarValoresSat": await Task.Run(async() => { await Conexion.GetDatosAsync <Valores_SAT>(ruta); }); break; case "ListarArticulos": await Task.Run(async() => { await Conexion.GetDatosAsync <Articulos>(ruta); }); break; case "ListarServicios": await Task.Run(async() => { await Conexion.GetDatosAsync <Servicios>(ruta); }); break; case "ListarClientes": await Task.Run(async() => { await Conexion.PostDatosAsync <Cliente>(persona, contraseña, ruta); }); break; case "ListarDireccionCliente": await Task.Run(async() => { await Conexion.PostDatosAsync <Direccion_Cliente>(persona, contraseña, ruta); }); break; case "ListarClienteMaquina": await Task.Run(async() => { await Conexion.PostDatosAsync <Cliente_Maquina>(persona, contraseña, ruta); }); break; case "ListarSatEquipo": await Task.Run(async() => { await Conexion.GetDatosAsync <SAT_Equipo>(ruta); }); break; case "ListarMaquinas": await Task.Run(async() => { await Conexion.GetDatosAsync <Maquinas>(ruta); }); break; case "ListarSat": await Task.Run(async() => { await Conexion.PostDatosAsync <SAT>(persona, contraseña, ruta); }); break; case "ListarSatLineas": await Task.Run(async() => { await Conexion.PostDatosAsync <SAT_Lineas>(persona, contraseña, ruta); }); break; case "UpdateRecibirLineas": await Task.Run(async() => { await Conexion.PostDatosUpdateAsync <SAT>(ruta); }); break; } } else { switch (Enti) { case "ListarSat": await Task.Run(async() => { await Conexion.PostDatosAsync <SAT>(persona, contraseña, ruta); }); break; case "ListarSatLineas": await Task.Run(async() => { await Conexion.PostDatosAsync <SAT_Lineas>(persona, contraseña, ruta); }); break; case "ListarSatEquipo": await Task.Run(async() => { await Conexion.GetDatosAsync <SAT_Equipo>(ruta); }); break; case "ListarClientes": await Task.Run(async() => { await Conexion.PostDatosAsync <Cliente>(persona, contraseña, ruta); }); break; case "ListarClienteMaquina": await Task.Run(async() => { await Conexion.PostDatosAsync <Cliente_Maquina>(persona, contraseña, ruta); }); break; case "ListarDireccionCliente": await Task.Run(async() => { await Conexion.PostDatosAsync <Direccion_Cliente>(persona, contraseña, ruta); }); break; case "ListarMaquinas": await Task.Run(async() => { await Conexion.GetDatosAsync <Maquinas>(ruta); }); break; } } } else { Variables.ErrorTransDatos = 0; await DisplayAlert("Transmisión", "Error en las comunicaciones", "OK"); } } popupLoadingView.IsVisible = false; await Navigation.PushModalAsync(new NavigationPage(new Principal_Listado())); } catch (Exception ex) { throw ex; } }