public List<MigranteBE> ListaMigrantesInternacionales(string codPaisNacimiento, System.DateTime fecIni, System.DateTime fecFin)
        {
            AerolineaEntities MiAerolinea = new AerolineaEntities();
            List<MigranteBE> objListaBE = new List<MigranteBE>();

            //SI es internacional devuelve datos con paises

            try
            {
                var query = (from tbPasajero in MiAerolinea.PASAJERO
                             join tbReservacion in MiAerolinea.RESERVACION
                                        on tbPasajero.COD_PASAJERO equals tbReservacion.COD_PASAJERO
                             join tbVuelo in MiAerolinea.VUELO
                                        on tbReservacion.COD_VUELO equals tbVuelo.COD_VUELO
                             join tbRuta in MiAerolinea.RUTA
                                        on tbVuelo.COD_RUTA equals tbRuta.COD_RUTA
                             join tbLugar in MiAerolinea.LUGAR
                                        on tbRuta.COD_DESTINO equals tbLugar.COD_LUGAR
                             join tbPais in MiAerolinea.PAIS
                                        on tbLugar.COD_PAIS equals tbPais.COD_PAIS
                             where tbPasajero.COD_PAIS == codPaisNacimiento &&
                                    tbRuta.TIPO_RUTA == "INTERNACIONAL" &&
                             tbVuelo.FECHA_LLEGADA >= fecIni &&
                             tbVuelo.FECHA_LLEGADA <= fecFin

                             select new
                             {
                                 Codigo = tbPasajero.COD_PASAJERO,
                                 Nombre = tbPasajero.NOMBRE_PASAJERO,
                                 Apellido = tbPasajero.APELLIDO_PASAJERO,
                                 DNI = tbPasajero.DNI,
                                 Genero = tbPasajero.SEXO,
                                 NumTel = tbPasajero.NUMERO_TELEFONICO,
                                 Email = tbPasajero.EMAIL,
                                 FecNac = tbPasajero.FECHA_NACIMIENTO,
                                 PaisDestino = tbPais.NOMBRE_PAIS
                             }).Take(100);

                foreach (var resultado in query)
                {
                    MigranteBE objMigranteBE = new MigranteBE();
                    objMigranteBE.CodMigrante = resultado.Codigo;
                    objMigranteBE.NomMigrante = resultado.Nombre;
                    objMigranteBE.ApeMigrante = resultado.Apellido;
                    objMigranteBE.Dni = resultado.DNI;
                    objMigranteBE.Genero = resultado.Genero.ElementAt(0);
                    objMigranteBE.NumTelefono = resultado.NumTel;
                    objMigranteBE.Email = resultado.Email;
                    objMigranteBE.FecNac = Convert.ToDateTime(resultado.FecNac);
                    objMigranteBE.PaisDestino = resultado.PaisDestino;

                    objListaBE.Add(objMigranteBE);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return objListaBE;
        }
        public List<MigranteBE> ListaMigrantesPaisesFechas(string codPaisOrigen, string codPaisDestino, System.DateTime fecIni, System.DateTime fecFin)
        {
            AerolineaEntities MiAerolinea = new AerolineaEntities();
            List<MigranteBE> objListaBE = new List<MigranteBE>();

            try
            {
                var codLDestino = from tbLugar in MiAerolinea.LUGAR
                                  where tbLugar.COD_PAIS == codPaisDestino
                                  select tbLugar.COD_LUGAR;

                var query = (from tbPasajero in MiAerolinea.PASAJERO
                             join tbReservacion in MiAerolinea.RESERVACION
                                        on tbPasajero.COD_PASAJERO equals tbReservacion.COD_PASAJERO
                             join tbVuelo in MiAerolinea.VUELO
                                        on tbReservacion.COD_VUELO equals tbVuelo.COD_VUELO
                             join tbRuta in MiAerolinea.RUTA
                                        on tbVuelo.COD_RUTA equals tbRuta.COD_RUTA
                             where tbVuelo.FECHA_LLEGADA >= fecIni &&
                                   tbVuelo.FECHA_LLEGADA <= fecFin &&
                                   tbPasajero.COD_PAIS == codPaisOrigen &&
                                   codLDestino.Contains(tbRuta.COD_DESTINO)

                             select new
                             {
                                 Codigo = tbPasajero.COD_PASAJERO,
                                 Nombre = tbPasajero.NOMBRE_PASAJERO,
                                 Apellido = tbPasajero.APELLIDO_PASAJERO,
                                 DNI = tbPasajero.DNI,
                                 Genero = tbPasajero.SEXO,
                                 NumTel = tbPasajero.NUMERO_TELEFONICO,
                                 Email = tbPasajero.EMAIL,
                                 FecNac = tbPasajero.FECHA_NACIMIENTO
                             }).Take(100);

                foreach (var resultado in query)
                {
                    MigranteBE objMigranteBE = new MigranteBE();
                    objMigranteBE.CodMigrante = resultado.Codigo;
                    objMigranteBE.NomMigrante = resultado.Nombre;
                    objMigranteBE.ApeMigrante = resultado.Apellido;
                    objMigranteBE.Dni = resultado.DNI;
                    objMigranteBE.Genero = resultado.Genero.ElementAt(0);
                    objMigranteBE.NumTelefono = resultado.NumTel;
                    objMigranteBE.Email = resultado.Email;
                    objMigranteBE.FecNac = Convert.ToDateTime(resultado.FecNac);

                    objListaBE.Add(objMigranteBE);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return objListaBE;
        }