2010-11-12 18 views
3

我創建了一個類庫,並確保它繼承DNN調度程序將無法運行我的自定義計劃

DotNetNuke.Services.Scheduling.SchedulerClient 

而且有那麼overrided的DoWork的()子。

然後在dnn主機設置>調度程序中添加一個新的調度程序項。

在文本框中

標明:完整的類名稱和組裝:

Namespace.Classname, Dllname 

選中啓用計劃複選框,並添加5分鐘的運行時間間隔並啓用了趕超。

還添加了該類使用的表的列表。並保持5個記錄歷史

然後我救了它,

在視圖計劃狀態,我得到這樣的:

Name   | Next Start    | OverDue(s) | Time Remaining 
Sub reminder | 11/12/2010 9:52:02 AM | 3.5   | 0 

在請求模式下使用的調度。

在此先感謝您的幫助。


更新:

好吧,我創建了一個名爲「SubRenewal」 改名爲VB文件測試一個新的類庫項目,並添加下面的文件

Namespce Matts 
Public Class Test 
    Inherits Dnn.Services.Scheduling.SchedulerClient 
    Public overrides Sub DoWork() 
    Me.ScheduleHistoryItem.addLogNote("I ran") 
    end Sub 
End Class 
End Namespace 

對調度頁我把: 友好名稱測試儀 全班名稱和程序集Matts.Test,SubRenwal 啓用是的 時間推移10秒 Rety頻率 - 在事件上運行無 並將其他所有內容保留空白並保存。計劃任務或項目歷史中仍然沒有任何內容另外那裏有沒有在事件查看器

+0

退房時間表歷史 – 2010-11-12 11:03:30

+0

標準DNN調度運行正常。雷犯規秀完全沒有問題 – Matt 2010-11-12 11:48:27

回答

2

首先我還想感謝Lakhlan,對他的幫助,沒有他我不會發現的錯誤。

我認爲這個問題是兩件事之一,第一件事是我註冊了對另一個自定義模塊的引用,以允許本地化一些輸出文本。

而且我在下面

新構造
Public Sub New(ByVal objSceduleHistoryItem As DotNetNuke.Services.Scheduling.ScheduleHistoryItem) 
     MyBase.New() 
     Me.ScheduleHistoryItem = objSceduleHistoryItem 
    End Sub 

再次感謝會了投票您的幫助,但不能:(

+0

不用擔心,我很高興您的問題已解決。請將您的答案標記爲解決方案,以便標記問題已解決。 – 2010-11-13 05:27:06

2

我建議以下步驟來開始使用調度程序開發和調試:

  • 創建一個新的類庫probject和它
  • 添加DotNetNuke的和相關的DLL參考添加相同項目的參考您的DNN的項目
  • 添加一個新的VB或C#文件來實現調度
  • 添加代碼行以創建時間表歷史條目並沒有其他的代碼
  • 測試您的調度
  • 從dotentnuke網站主機帳戶註冊新的調度

請注意,一旦你添加新的調度項目,將火調度。 我希望這會幫助你。我會建議刪除已有的調度程序條目,重置您的網站實例(iis或asp。網絡開發服務器),並嘗試將其再次使用上述方法

希望這將幫助你

+0

請參閱編輯主帖 – Matt 2010-11-12 14:16:31