描述
定义一个在服务器端定时执行的方法。
参数说明
ScheduleApi可以接受两个参数,分别是开始时间和每次执行的时间间隔。如果没有指定开始时间表示服务器启动时立即开始。
例如,ScheduleApi("01:10:05", "7")中“01:10:05”代表开始时间,单位为“时:分:秒”,“7”为时间间隔,单位为日。
ScheduleApi("0:0:10")即没有执行的时间间隔,表示从网站启动时刻开始,每隔10秒执行一次。
示例代码
using System.Collections.Generic; using GrapeCity.Forguncy.ServerApi; namespace TestServerCustomApi { public class MyApi : ForguncyApi { // 表示从网站启动时刻开始,每隔10秒执行以下函数,通常在函数中会有判断,如库存小于阈值时发通知给管理员 [ScheduleApi("0:0:10")] public void TestGetApi() { if (IsStorageIsToLow()) { SendEmailToAdmin(); } } //每日零点执行以下函数,通常用于:每日归档、备份或者发送统计报表等 [ScheduleApi("0:0:0", "1")] public void TestGetApi() { } // 每隔7日执行一次 [ScheduleApi("0:0:0", "7")] public void TestGetApi() { } // 如果希望每个月的1号做特定的事情,不能使用[ScheduleApi("0:0:0", "30")],因为每个月的天数是不一样的。可以使用如下写法 [ScheduleApi("0:0:0", "1")] public void TestGetApi() { if (DateTime.Now.Day == 1) { // 执行一些操作 } } } }
说明
完整示例可参见SendEmail方法。