日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SharePoint Timer Job

發(fā)布時間:2023/12/9 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SharePoint Timer Job 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

首先介紹一下什么是定時器作業(yè),說的再多,也不如一張圖說的清楚


這兩張圖應(yīng)該把我想說的已經(jīng)表達清楚了,下一步介紹一下如何自定義Timer Job
第一步:創(chuàng)建一個類(CustomTimerJob.cs)
第二步:引用 using Microsoft.SharePoint.Administration;并繼承SPJobDefinition
第三步:構(gòu)造 三個函數(shù)
? ?? ???public CustomTimerJob()
? ?? ?? ?? ?: base()
? ?? ???{
? ?? ???}
? ?? ???public CustomTimerJob(string jobName, SPService service, SPServer server, SPJobLockType targetType)
? ?? ?? ?? ?: base(jobName, service, server, targetType)
? ?? ???{
? ?? ???}
? ?? ???public CustomTimerJob(string jobName, SPWebApplication webApplication)
? ?? ?? ?? ?: base(jobName, webApplication, null, SPJobLockType.ContentDatabase)
? ?? ???{
? ?? ?? ?? ?this.Title = "Custom Timer Job";??//在上面的圖處上可以看到這個名字
? ?? ???}
第四步:override Execute 處理自己的業(yè)務(wù)
? ???public override void Execute(Guid targetInstanceId)
? ?? ???{
? ?? ?? ?? ?SPWebApplication webApplication = this.Parent as SPWebApplication;
? ?? ?? ?? ?SPContentDatabase contentDb = webApplication.ContentDatabases[targetInstanceId];
? ?? ?? ?? ?// get a reference to the "Tasks" list in the RootWeb of the first site collection in the content database
? ?? ?? ?? ?SPList taskList = contentDb.Sites[0].RootWeb.Lists["Product"];
? ?? ?? ?? ?// create a new task, set the Title to the current day/time, and update the item
? ?? ?? ?? ?SPListItem newTask = taskList.Items.Add();
? ?? ?? ?? ?newTask["Title"] = DateTime.Now.ToString();
? ?? ?? ?? ?newTask.Update();
? ?? ???}
在上一篇 自定義 Features 里面,當(dāng)激活功能時,到管理中心可以看到自己的定義的 Timer Job
public override void FeatureActivated(SPFeatureReceiverProperties properties)
? ?? ???{
? ?? ?? ?? ?SPSite site = properties.Feature.Parent as SPSite;
? ?? ?? ?? ?if (site != null)
? ?? ?? ?? ?{
? ?? ?? ?? ?? ? foreach (SPJobDefinition job in site.WebApplication.JobDefinitions)
? ?? ?? ?? ?? ? {
? ?? ?? ?? ?? ?? ???if (job.Name == CUSTOM_TIMER_JOB)
? ?? ?? ?? ?? ?? ???{
? ?? ?? ?? ?? ?? ?? ?? ?job.Delete();
? ?? ?? ?? ?? ?? ???}
? ?? ?? ?? ?? ? }
? ?? ?? ?? ?}
? ?? ?? ?? ?//開始Job
? ?? ?? ?? ?CustomTimerJob customTimerJob = new CustomTimerJob(CUSTOM_TIMER_JOB, site.WebApplication);
? ?? ?? ?? ?SPMinuteSchedule schedule = new SPMinuteSchedule();
? ?? ?? ?? ?schedule.BeginSecond = 0;
? ?? ?? ?? ?schedule.EndSecond = 59;
? ?? ?? ?? ?schedule.Interval = 5;
? ?? ?? ?? ?customTimerJob.Schedule = schedule;
? ?? ?? ?? ?customTimerJob.Update();
? ?? ???}
之后部署,到網(wǎng)站網(wǎng)站集里停止再激活,之后去管理中心,就可以看到自己定義的Job了

更多精彩請關(guān)注







轉(zhuǎn)載于:https://www.cnblogs.com/Fengger/archive/2012/06/02/2532047.html

總結(jié)

以上是生活随笔為你收集整理的SharePoint Timer Job的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。