簡體   English   中英

調試Sharepoint計時器作業

[英]Debugging Sharepoint timer jobs

我正在創建我的第一個Timer Job並想要調試它。 我已經通過一個功能安裝了計時器作業,並將其添加到webapplication的JobDefinitions集合中,並添加了一個SPMinuteSchedule,每5分鍾運行一次(用於測試目的)。

然后,在Visual Studio中,我嘗試將調試器附加到WebApplication的Process,Central Admin進程和OWSTIMER.exe進程,但它不會調試到TimerJob的Execute方法。 我在這里想念的是什么

PS計時器作業狀態顯示成功,因此正在運行。 奇怪的...

當我調試TimerJobs時,我在Execute方法的第一次開始時插入一個Assertion,它總是會失敗。 每次調用Execute方法時都會彈出一次,這樣您就可以確定TimerJob已經啟動並且有足夠的時間來連接調試器。 當然,你必須在上線之前刪除斷言。

System.Diagnostics.Trace.Assert(false);

更重要的是,在部署新DLL后重新啟動Timer Service。 否則,定時服務將從舊DLL運行TimerJob。

最常見的原因:

  1. 你做過調試構建嗎?
  2. 您是否將.pdb文件放在與程序集相同的文件夾中? (一個簡單的搜索應該解釋如何 - 例如。 調試計時器工作
  3. 另請參閱MSDN上的調試自定義計時器作業以獲取一些提示。
  4. 執行3 R:重新構建和重新部署程序集並重置計時器服務,然后再嘗試連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM