繁体   English   中英

如何在服务器上没有 windows 服务的情况下运行计划作业?

[英]How can I run schedule job with out windows service on server?

我发送了一封使用 asp.net 和石英在本地工作的邮件。 它工作得很好。 但是当我把它放在服务器上时它不起作用。 他们说,因为它是共享主机,出于安全原因,他们无法运行它。 Sql 代理也不作为标准提供。 我猜 HangFire 不使用 windows 服务。 我也找不到如何使用 asp.net web 表格。

也许有人需要 Asp.net 网络表单的代码。

电子邮件职位代码

public class EmailJob : IJob
{

    public void Execute(IJobExecutionContext context)
    {
        sendmail();
    }

   public void sendMail()
    {
       //send mail code
    }

}

JobScheduler 代码每天 00.00 工作。 你可以改变你想要的.. :)

public class JobScheduler
{
    public static void Start()
    {
        IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();
        scheduler.Start();

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


        ITrigger trigger = TriggerBuilder.Create()
            .WithDailyTimeIntervalSchedule
              (s =>
                 s.WithIntervalInHours(24)
                .OnEveryDay()
                .StartingDailyAt(TimeOfDay.HourAndMinuteOfDay(00, 00))
                .InTimeZone(TimeZoneInfo.Local)
              )
            .Build();

        scheduler.ScheduleJob(job, trigger);
    }
}

Global.asax启动作业调度程序

void Application_Start(object sender, EventArgs e)
    {
        JobScheduler.Start();

    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM