C# 在asp.net和C中使用Quartz安排生日消息#

C# 在asp.net和C中使用Quartz安排生日消息#,c#,asp.net,quartz-scheduler,C#,Asp.net,Quartz Scheduler,我想给我的网站用户发送生日信息。我使用Quartz进行调度,我编写了一些代码,但我发现它永远工作,但调度程序工作了一段时间,然后它停止了 我不知道是IIS服务器配置还是其他什么 public class Global : System.Web.HttpApplication { public static void Start() { IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();

我想给我的网站用户发送生日信息。我使用Quartz进行调度,我编写了一些代码,但我发现它永远工作,但调度程序工作了一段时间,然后它停止了

我不知道是IIS服务器配置还是其他什么

public class Global : System.Web.HttpApplication
{
    public static void Start()
    {
        IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();
        scheduler.Start();

        IJobDetail job = JobBuilder.Create<BirthdaySch>().Build();

        ITrigger trigger = TriggerBuilder.Create()
            .StartNow()
            .WithSimpleSchedule(x => x
             .WithIntervalInMinutes(1)
             .RepeatForever())
          .Build();

        scheduler.ScheduleJob(job, trigger);
    }

    protected void Application_Start(object sender, EventArgs e)
    {
        Start();
    }

    protected void Session_Start(object sender, EventArgs e)
    {
    }

    protected void Application_BeginRequest(object sender, EventArgs e)
    {
    }

    protected void Application_AuthenticateRequest(object sender, EventArgs e)
    {
    }

    protected void Application_Error(object sender, EventArgs e)
    {
    }

    protected void Session_End(object sender, EventArgs e)
    {
    }

    protected void Application_End(object sender, EventArgs e)
    {
    }
}
公共类全局:System.Web.HttpApplication
{
公共静态void Start()
{
isScheduler scheduler=StdSchedulerFactory.GetDefaultScheduler();
scheduler.Start();
IJobDetail job=JobBuilder.Create().Build();
ITrigger trigger=TriggerBuilder.Create()
.StartNow()
.使用SimpleSchedule(x=>x
.间隔分钟(1)
.RepeatForever())
.Build();
ScheduleJob(作业,触发器);
}
受保护的无效应用程序\u启动(对象发送方,事件参数e)
{
Start();
}
受保护的无效会话\u启动(对象发送方,事件参数e)
{
}
受保护的无效应用程序\u BeginRequest(对象发送方,事件参数e)
{
}
受保护的无效应用程序\u AuthenticateRequest(对象发送方,事件参数e)
{
}
受保护的无效应用程序\u错误(对象发送方,事件参数e)
{
}
受保护的无效会话\u结束(对象发送方,事件参数e)
{
}
受保护的无效应用程序\u结束(对象发送方,事件参数e)
{
}
}

asp.net应用程序运行线程将在没有请求时挂起自身。石英也将停止。 首先,您应该使用windows服务或控制台应用程序来运行调度服务。 构建一个控制台应用程序并运行它,这是最好的方法。 或构建windows服务,请在服务主体中使用quartz.net调度程序