public async Task <bool> SetCargaInformacionAsync(int idCandidato, ECargaInformacionCandidato cargaInformacion)
        {
            try
            {
                var candidato = await this.candidatoRepository.Single(new CandidatoSpecification(idCandidato))
                                .ConfigureAwait(false);

                if (candidato?.CandidatoDetalle == null)
                {
                    candidato.CandidatoDetalle = new CandidatoDetalle();
                }

                if (cargaInformacion == ECargaInformacionCandidato.Primera)
                {
                    candidato.CandidatoDetalle.StatusCapturaInformacion = EStatusCapturaCandidato.CapturaInicial;
                    candidato.CandidatoDetalle.CargaInformacion1        = DateTime.Now;

                    await this.NotificarAsync(idCandidato, ETipoEvento.NotificarRHCargaInicialInformacion)
                    .ConfigureAwait(false);
                }
                else
                {
                    candidato.CandidatoDetalle.StatusCapturaInformacion = EStatusCapturaCandidato.CapturaComplementaria;
                    candidato.CandidatoDetalle.CargaInformacion2        = DateTime.Now;

                    await this.NotificarAsync(idCandidato, ETipoEvento.NotificarRHCargaComplementariaInformacion)
                    .ConfigureAwait(false);
                }

                await this.candidatoRepository.UpdateAsync(candidato)
                .ConfigureAwait(false);

                return(true);
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
 Task <bool> ICandidatoService.SetCargaInformacionAsync(int idCandidato, ECargaInformacionCandidato cargaInformacion)
 {
     throw new NotImplementedException();
 }