繁体   English   中英

如何在隔天运行自定义Sharepoint计时器作业?

[英]How to run a Custom Sharepoint Timer Job on alternate day?

我必须在隔天使用“自定义计时器作业”执行一些操作吗? 下面创建和启动Timer作业(在功能接收器中)的代码,但是它每天运行, 我必须隔天运行一次

怎么做?

私人布尔CreateJob(SPSite网站){bool jobCreated = false; 尝试{

            TimerJob job = new TimerJob(JobName, site.WebApplication);
            job.Title = JobName;
            SPMinuteSchedule schedule = new SPMinuteSchedule();
            schedule.BeginSecond = 0;
            schedule.EndSecond = 59;
            schedule.Interval = 15;
            job.Schedule = schedule;

            job.Update();
        }
        catch (Exception)
        {
            return jobCreated;
        }
        return jobCreated;
    }

我认为上面的代码每15分钟运行一次,您有SPMinuteSchedule ,必须使用SPDailySchedule 请参阅msdn文档

但是,当Job运行时,您可以获取当前的DayOfWeek并在需要时运行代码

        switch (DateTime.Now.DayOfWeek)
        {
            case DayOfWeek.Friday:
                break;
            case DayOfWeek.Monday:
                break;
            case DayOfWeek.Saturday:
                break;
            case DayOfWeek.Sunday:
                break;
            case DayOfWeek.Thursday:
                break;
            case DayOfWeek.Tuesday:
                break;
            case DayOfWeek.Wednesday:
                break;
            default:
                break;
        }

或者,您可以将上一次运行保存在Job Property Bag中。 此链接中,您可以找到SPWeb的示例,但SPJob的示例相同。

暂无
暂无

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

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