//Obtener la lista ContratoArrto. registrados
        public List <ModeloNegocios.InmuebleArrto> ObtenerMvtosContratosInmueblesRegistrados(int?OtrasFiguras, int?IdInstitucion, int FolioContratoArrto, int IdPais, int IdEstado, int IdMpo, string RIUF)
        {
            List <ModeloNegocios.InmuebleArrto> ListInmuebleArrtoConAsociacionesCptos;

            using (ArrendamientoInmuebleEntities Conn = new ArrendamientoInmuebleEntities())
            {
                try
                {
                    ListInmuebleArrtoConAsociacionesCptos = Conn.spuSelectMvtosContratosParaInmueblesArrto(OtrasFiguras, IdInstitucion, FolioContratoArrto, IdPais, IdEstado, IdMpo, RIUF)
                                                            .Where(RegistroBD => RegistroBD.EstatusRegistroContrato != false)
                                                            .Select(RegistroBD => new ModeloNegocios.InmuebleArrto
                    {
                        //Re- mapear propiedades del objeto del entity framework al objeto de negocio
                        IdInmuebleArrendamiento = RegistroBD.IdInmuebleArrendamiento, //PK
                        IdInstitucion           = RegistroBD.Fk_IdInstitucion,

                        //RCA 02/01/2017
                        //se comento ya que el cargo lo obtenemos del stored
                        //IdCargo = RegistroBD.Fk_IdCargo,

                        NombreCargo            = RegistroBD.CargoUsuarioRegistro,
                        IdUsuarioRegistro      = RegistroBD.Fk_IdUsuarioRegistro,
                        FechaAltaMvtoAInmueble = RegistroBD.FechaRegistro,

                        NombreInmueble = RegistroBD.NombreInmueble,
                        IdPais         = RegistroBD.Fk_IdPais,
                        //propiedades de inmueble nacional
                        IdEstado           = RegistroBD.Fk_IdEstado,    //posible: null
                        IdMunicipio        = RegistroBD.Fk_IdMunicipio, //posible: null
                        IdLocalidadColonia = RegistroBD.Fk_IdLocalidad, //posible: null
                        IdTipoVialidad     = RegistroBD.Fk_IdTipoVialidad,
                        CodigoPostal       = RegistroBD.CodigoPostal,
                        //propiedades comunnes de cualquier inmueble
                        NombreVialidad = RegistroBD.NombreVialidad,
                        NumExterior    = RegistroBD.NumExterior,
                        NumInterior    = RegistroBD.NumInterior,
                        //propiedades de inmueble extranjero
                        CodigoPostalExtranjero = RegistroBD.CodigoPostalExtranjero,
                        EstadoExtranjero       = RegistroBD.EstadoExtranjero,
                        CiudadExtranjero       = RegistroBD.CiudadExtranjero,
                        MunicipioExtranjero    = RegistroBD.MunicipioExtranjero,
                        //RCA 15/08/2017
                        FechaFinOcupacion = Convert.ToDateTime(RegistroBD.FechaFinOcupacion),
                        //RCA 17/08/2017
                        Bandera = RegistroBD.EsPadre,

                        //objeto de negocio embedido: opcional
                        EmisionOpinion = new ModeloNegocios.AplicacionConcepto
                        {
                            FolioAplicacionConcepto = RegistroBD.FolioAplicacionConcepto,
                            //TemaAplicacionConcepto = RegistroBD.TemaAplicacionConcepto,
                        },

                        //propiedad que es un objeto de negocio embedido: opcional
                        ContratoArrtoInmueble = new ModeloNegocios.ContratoArrto
                        {
                            FolioContratoArrto           = RegistroBD.FolioContratoConInmuebleArrendado,
                            DescripcionTipoContrato      = RegistroBD.DescripcionTipoContrato,      //Nac, Extj o OtrasFigOcup
                            DescripcionTipoArrendamiento = RegistroBD.DescripcionTipoArrendamiento, //Nuevo, Continuacion, Sust
                            RIUF = RegistroBD.RIUF,
                            ObservacionesContratosReferencia = RegistroBD.Observaciones,
                            IsNotReusable = RegistroBD.IsNotReusable
                        },

                        //FolioContratoArrtoVsInmuebleArrendado = RegistroBD.FolioContratoConInmuebleArrendado,//puede ser nulo, porque quizas el inmueble no se asocia a un ContratoArrto.
                        OtraColonia = RegistroBD.OtraColonia

                                      // FolioContratoArrto_FK = RegistroBD.FolioContratoAlQueAlplicaOpinion, //puede venir nulo,se cambio por cero
                    }).OrderByDescending(o => o.ContratoArrtoInmueble.FolioContratoArrto).ThenByDescending(o => o.EmisionOpinion.FolioAplicacionConcepto).ToList();
                }
                catch (Exception ex)
                {
                    throw new Exception(string.Format("ObtenerMvtosContratosInmueblesRegistrados: ", ex.Message));
                }
            }//using

            //regresa un count con la lista de parametros
            return(ListInmuebleArrtoConAsociacionesCptos);
        }