示例#1
0
        public AdministracionWCF()
        {
            unityContainer = new UnityContainer();
            string connString = WebConfigurationManager.ConnectionStrings["LeandroContext"].ConnectionString;

            unityContainer.RegisterInstance("conectionString", connString, new ContainerControlledLifetimeManager());
            unityContainer.RegisterType <IDbContext, LeandroContext>(new InjectionConstructor(new ResolvedParameter <string>("conectionString")));
            unityContainer.RegisterType <ICorreoService, CorreoService>(new InjectionConstructor(appSettings["smtpEmailHost"], appSettings["smtpEmailPort"], appSettings["smtpEmailAccount"], appSettings["smtpEmailPass"], appSettings["smtpSSLHost"]));
            unityContainer.RegisterType <IServerMailService, ServerMailService>(new InjectionConstructor(appSettings["pop3EmailHost"], appSettings["pop3EmailPort"]));
            unityContainer.RegisterType <IFacturacionService, FacturacionService>();
            unityContainer.RegisterType <IMantenimientoService, MantenimientoService>();
            unityContainer.RegisterType <IReporteService, ReporteService>();
            servicioEnvioCorreo     = unityContainer.Resolve <ICorreoService>();
            servicioRecepcionCorreo = unityContainer.Resolve <IServerMailService>();
            servicioFacturacion     = unityContainer.Resolve <IFacturacionService>();
            servicioMantenimiento   = unityContainer.Resolve <IMantenimientoService>();
            servicioReportes        = unityContainer.Resolve <IReporteService>();
        }
示例#2
0
 public void RunSyncProcesarPendientes()
 {
     try
     {
         using (UnityContainer singletonContainer = new UnityContainer())
         {
             string connString = WebConfigurationManager.ConnectionStrings["LeandroContext"].ConnectionString;
             singletonContainer.RegisterType <IDbContext, LeandroContext>(new InjectionConstructor(connString));
             singletonContainer.RegisterType <ICorreoService, CorreoService>(new InjectionConstructor(appSettings["smtpEmailHost"], appSettings["smtpEmailPort"], appSettings["smtpEmailAccount"], appSettings["smtpEmailPass"], appSettings["smtpSSLHost"]));
             singletonContainer.RegisterType <IServerMailService, ServerMailService>(new InjectionConstructor(appSettings["pop3EmailHost"], appSettings["pop3EmailPort"]));
             singletonContainer.RegisterType <IFacturacionService, FacturacionService>();
             ICorreoService      servicioEnvioCorreo     = singletonContainer.Resolve <ICorreoService>();
             IServerMailService  servicioRecepcionCorreo = singletonContainer.Resolve <IServerMailService>();
             IFacturacionService servicioFacturacion     = singletonContainer.Resolve <IFacturacionService>();
             servicioFacturacion.ProcesarDocumentosElectronicosPendientes(servicioEnvioCorreo, configuracionGeneral);
             servicioFacturacion.ProcesarCorreoRecepcion(servicioEnvioCorreo, servicioRecepcionCorreo, configuracionGeneral, configuracionRecepcion);
         }
     }
     catch (Exception ex)
     {
         JArray jarrayObj = new JArray();
         servicioEnvioCorreo.SendEmail(new string[] { configuracionGeneral.CorreoNotificacionErrores }, new string[] { }, "Error en el procesamiento de documentos pendientes", "Ocurrio un error en el procesamiento de documentos pendientes: " + ex.Message, false, jarrayObj);
     }
 }