websyhg 发表于 2017-5-24 11:03:04

sharepoint中添加计时器作业时用到的俩个方法

  using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Administration;
  namespace TimeJobV1
{
  //安装timer
class TimeJobInstaller : SPFeatureReceiver //定义功能接收器
{
const string txtTimeJobTest = "TimeJobTest"; //定义查找计时器作业标题常量

//定义功能接收器操作方法
public override void FeatureInstalled(SPFeatureReceiverProperties properties)
{ }
public override void FeatureUninstalling(SPFeatureReceiverProperties properties)
{ }
  public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
SPSite site = properties.Feature.Parent as SPSite; //获取网站集对象
  //遍历该网站集所有计时器作业,查找正要添加的计时器作业是否存在,如果存在,将其删除
foreach (SPJobDefinition job in site.WebApplication.JobDefinitions)
{
if (job.Name == txtTimeJobTest)
{
job.Delete();
}

}
  //添加计时器作业
TimeJobTest Timer = new TimeJobTest(txtTimeJobTest, site.WebApplication);
  //设置定时器的执行计划部分
SPMinuteSchedule schedule = new SPMinuteSchedule();
schedule.BeginSecond = 0;
schedule.EndSecond = 59;
schedule.Interval = 2;
Timer.Schedule=schedule;
Timer.Update();
}
  public override void FeatureDeactivating(SPFeatureReceiverProperties properties)
{
SPSite site = properties.Feature.Parent as SPSite;
foreach (SPJobDefinition job in site.WebApplication.JobDefinitions)
{
if (job.Name == txtTimeJobTest)
{
job.Delete();
}
}
}

  
}
  }
  //执行timer
  using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Administration;
using Microsoft.SharePoint.Utilities;
  namespace TimeJobV1
{
public class TimeJobTest:SPJobDefinition
{
public TimeJobTest():base(){}
public TimeJobTest(string _TimeName,SPWebApplication _wp):base(_TimeName,_wp,null,SPJobLockType.ContentDatabase)
{
this.Title = "TimeJobTest";
}
  public override void Execute(Guid targetInstanceId)
{
//调用添加用户与组到主站的list中 执行添加类实力
TimeUserGroup timeUserGroup = new TimeUserGroup();
timeUserGroup.AddUserGroup();
  }}}
页: [1]
查看完整版本: sharepoint中添加计时器作业时用到的俩个方法