Beispiel #1
0
        public void ProcesarEnvioCorreo()
        {
            try
            {
                Da_Correo        daCorreo        = new Da_Correo();
                List <En_Correo> correos         = daCorreo.CorreosPendientesDeEnvio();
                Da_Comprobante   daComprobante   = new Da_Comprobante();
                string           carpetaTemporal = daComprobante.ObtenerRutaTemporal("TempCorreo");
                CrearCarpeta(carpetaTemporal);

                if (correos.Count > 0)
                {
                    Task[] taskArray = new Task[correos.Count];

                    int i = 0;
                    foreach (En_Correo correo in correos)
                    {
                        En_Correo correoParam = correo;
                        taskArray[i] = Task.Factory.StartNew(() => EnviarCorreo(carpetaTemporal, correoParam));
                        i           += 1;
                    }
                    Task.WaitAll(taskArray.ToArray());
                }
            }
            catch (Exception ex)
            {
                log.Error(ex.Message.ToString(), ex);
            }
        }
Beispiel #2
0
        public void ProcesarRegistroCorreo()
        {
            try
            {
                Da_Comprobante        daComprobante = new Da_Comprobante();
                List <En_Comprobante> comprobantes  = daComprobante.ComprobantesPendientesDeEnvio();

                if (comprobantes.Count > 0)
                {
                    log.InfoFormat("Se inicia el registro de correos, cantidad: {0}.", comprobantes.Count());
                    Task[] taskArray = new Task[comprobantes.Count];

                    int i = 0;
                    foreach (En_Comprobante comprobante in comprobantes)
                    {
                        En_Comprobante comprobanteParam = comprobante;
                        taskArray[i] = Task.Factory.StartNew(() => RegistrarCorreo(comprobanteParam));
                        i           += 1;
                    }
                    Task.WaitAll(taskArray.ToArray());
                    log.InfoFormat("Se ha terminado el registro de los correos, cantidad: {0}.", comprobantes.Count());
                }
            }
            catch (Exception ex)
            {
                log.Error(ex.Message.ToString(), ex);
            }
        }