0

我必须在 asp.net 的后台工作进程中并行执行两项任务。

以下是两个任务

  1. 如果域中的任何服务器发生任何错误事件(一直),则发送电子邮件警报以支持人员

  2. 每 4 小时一次或根据用户配置发送域中所有服务器的错误消息状态报告。

我已经通过后台工作进程实现了第一个任务(

现在我想实现第二个,每 4 小时或用户配置一次从数据库中获取数据。

请找到以下是我用于实现的源代码。

      protected void Application_Start()
      {
        AreaRegistration.RegisterAllAreas();
        RegisterRoutes(RouteTable.Routes);

        BackgroundWorker worker = new BackgroundWorker();
        worker.DoWork += new DoWorkEventHandler(DoWork);
        worker.WorkerReportsProgress = false;
        worker.WorkerSupportsCancellation = true;
        worker.RunWorkerCompleted +=
               new RunWorkerCompletedEventHandler(WorkerCompleted);
        worker.RunWorkerAsync(); 

    }


    private static void DoWork(object sender, DoWorkEventArgs e)
    {
        GetEmailAlertData objGetEmailAlertData = new GetEmailAlertData();
        List<Email> lstEmaildetails = objGetEmailAlertData.GetEmailAlertDetails();
        SentinelAlerter objSentinelAlerter = new SentinelAlerter();
        foreach (Email objEmail in lstEmaildetails)
        {
            try
            {
       // I have implement first task           
                objAlerter.SendAlert(objEmail);
            }
            catch (Exception ex)
            {

            }
            finally
            {

            }
        }

    }

谁能建议如何在同一个后台工作进程中实现第二个任务。

4

1 回答 1

0

我建议您使用任务计划程序,它很简单,可以解决您的问题。

于 2012-10-26T11:55:49.147 回答