C# 从ASP.net的提醒开始

C# 从ASP.net的提醒开始,c#,asp.net,workflow,reminders,C#,Asp.net,Workflow,Reminders,我需要每天检查是否有人在那里的任务迟到,并发送电子邮件,如果他们是。。。我选择什么?这些似乎都不是为这个而做的 我使用了一个后台进程,它是一个线程,启动功能,在必要时发送提醒电子邮件,然后睡24小时,希望效果不错 在Global.asax中: public class Global : System.Web.HttpApplication { protected void Application_Start(object sender, EventArgs e) {

我需要每天检查是否有人在那里的任务迟到,并发送电子邮件,如果他们是。。。我选择什么?这些似乎都不是为这个而做的


我使用了一个后台进程,它是一个线程,启动功能,在必要时发送提醒电子邮件,然后睡24小时,希望效果不错

在Global.asax中:

public class Global : System.Web.HttpApplication
{
    protected void Application_Start(object sender, EventArgs e)
    {
        Thread backGroundProcess = new Thread(BoucleInfini);
        backGroundProcess.Start();
    }
}
线程:

    protected void BoucleInfini()
    {
        while (0==0)
        {
            BLL.Rappel.RetardCheckUp(System.Web.Hosting.HostingEnvironment.MapPath("~/_inc/courriels"));

            Thread.Sleep(1000 * 60 * 60 * 24);
        }
    }
使用网站mason给了我:

编辑

这是错误的


只需使用windows任务调度器,它几乎在所有windows服务器上都有。

为邮件发送代码制作一个控制台应用程序,并使用windows调度器将其安排在每天的特定时间运行。或者您也可以创建windows服务。windows计划程序?好的,我会得到通知的。Windows任务调度程序只是一种按计划运行程序的机制。所以你只限于程序能做的任何事情。如果您成功地编写了一个ASP.NET站点来处理这些任务,那么您肯定可以编写一个控制台程序。另一个选项是编写服务(也是一个控制台应用程序,但这些应用程序经常运行)或嵌入一个服务。或者,如果您在云中,请查看您的云托管选项。关键是,做一些研究!好的,谢谢@mason,如果我使用我的global.asax呢?这里有一个应用程序启动事件,它是启动任务调度程序并让它与web应用程序一起在IIS上运行的好地方吗?希望我没有弄错。你是说从Global.asax启动Windows计划任务?当然但请记住,如果任务因任何原因而被取消计划,网站不会为您添加代码。就个人而言,如果我是你,我就不会做计划的任务,因为现在你需要一个新的程序,你需要代码将两者联系起来。我将研究前面提供的后台任务链接中列出的选项之一。然后你就有了一个一体化的解决方案。哈哈,我太笨了,这个答案离一个好的解决方案还有好几英里远,只需使用托管任务,就像与mason讨论的那样,因为我编程的东西只有在网站有足够的流量时才起作用。如果今天没有人连接。。。没有发送提醒。