/// <summary>
        /// Este metodo se encarga de insertar o actualizar un objeto de una persona, en la base de datos.
        /// </summary>
        /// <param name="participacionInstitucionalExternaDM"></param>
        /// <returns>true o false</returns>
        public bool AddUpdateParticipacion(ParticipacionInstitucionalExternaDomainModel participacionInstitucionalExternaDM)
        {
            bool respuesta = false;

            if (participacionInstitucionalExternaDM.id > 0)
            {
                tblParticipacionInstitucionalExterna participacion =
                    participacionInstitucionalExternaRepository.
                    SingleOrDefault(p => p.id == participacionInstitucionalExternaDM.id);

                if (participacion != null)
                {
                    participacion.strActividad             = participacionInstitucionalExternaDM.strActividad;
                    participacion.idCatInstitucionSuperior = participacionInstitucionalExternaDM.idCatInstitucionSuperior;

                    participacionInstitucionalExternaRepository.Update(participacion);

                    respuesta = true;
                }
            }
            else
            {
                tblParticipacionInstitucionalExterna tblParticipacionInstitucional = new tblParticipacionInstitucionalExterna();
                catDocumentos catDocumentos = new catDocumentos();
                tblParticipacionInstitucional.id = participacionInstitucionalExternaDM.id;
                tblParticipacionInstitucional.idCatInstitucionSuperior = participacionInstitucionalExternaDM.idCatInstitucionSuperior;
                tblParticipacionInstitucional.idPersonal      = participacionInstitucionalExternaDM.idPersonal;
                tblParticipacionInstitucional.strActividad    = participacionInstitucionalExternaDM.strActividad;
                tblParticipacionInstitucional.dteFechaInicio  = participacionInstitucionalExternaDM.dteFechaInicio;
                tblParticipacionInstitucional.dteFechaTermino = participacionInstitucionalExternaDM.dteFechaTermino;

                catDocumentos.tblParticipacionInstitucionalExterna.Add(tblParticipacionInstitucional);
                catDocumentos.strUrl = participacionInstitucionalExternaDM.documentos.StrUrl;

                documentosRepository.Insert(catDocumentos);

                respuesta = true;
            }

            return(respuesta);
        }
        /// <summary>
        /// Este metodo se encarga de obtener un objeto de una persona, de la base de datos.
        /// </summary>
        /// <param name="idPersonal"></param>
        /// <param name="idDocumento"></param>
        /// <returns>un objeto</returns>
        public ParticipacionInstitucionalExternaDomainModel GetParticipacion(int idPersonal, int idDocumento)
        {
            ParticipacionInstitucionalExternaDomainModel participacionDM = new ParticipacionInstitucionalExternaDomainModel();

            Expression <Func <tblParticipacionInstitucionalExterna, bool> > predicante = p => p.idPersonal == idPersonal &&
                                                                                         p.idCatDocumento == idDocumento;

            tblParticipacionInstitucionalExterna tblParticipacion =
                participacionInstitucionalExternaRepository.GetAll(predicante).FirstOrDefault <tblParticipacionInstitucionalExterna>();

            participacionDM.id                       = tblParticipacion.id;
            participacionDM.idCatDocumento           = tblParticipacion.idCatDocumento.Value;
            participacionDM.idCatInstitucionSuperior = tblParticipacion.idCatInstitucionSuperior.Value;
            participacionDM.idPersonal               = tblParticipacion.idPersonal.Value;
            participacionDM.strActividad             = tblParticipacion.strActividad;
            participacionDM.dteFechaInicio           = tblParticipacion.dteFechaInicio;
            participacionDM.dteFechaTermino          = tblParticipacion.dteFechaTermino;
            participacionDM.documentos               = new DocumentosDomainModel
            {
                StrUrl = tblParticipacion.catDocumentos.strUrl
            };

            return(participacionDM);
        }