2010-07-30 58 views
1

我有一個Windows服務在我們的網站上調用一個頁面,原因有兩個:1)保持網站活着,2)執行Web服務方法,該活動也駐留在此網站上。ASP.Net:保持活動代碼執行

在page_Load上,Web服務實例(SvcTaskRun)被編碼以執行RunTasks()方法,該方法當前已設置爲每次調用時都會發送一封電子郵件,但稍後將執行一系列自動化任務。

Sub page_load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load 

    Dim SvcTaskRun As New MyTaskRunSvc.TaskRunSvc 

    Dim TaskListComplete As String = SvcTaskRun.RunTasks 

End Sub 

現在,我只是想獲得它運行(發送郵件)每次我存活頁面加載。

所以我的IIS日誌告訴我,每次它在keepalive.aspx上執行GET時,windows服務都會獲得200的ststus代碼。

但是,頁面加載代碼顯然不會執行。

問題:任何想法,爲什麼這不工作? 問:如何在等待Page_Load執行時實例化調試?從未使用過附件進行處理或之前的任何操作,只使用F5/F11進行調試。

THANKS

回答

1

萬一有人來這裏尋找一個答案,這裏就是我做來解決這個問題。

顯然,該網站並不想從自己的網絡服務調用自己的網絡方法。我想象一下ASPNET權限可能有問題,但由於體系結構的變化,RunTasks方法不再需要從網站外部調用,因此我簡單地將RunTasks方法作爲Web應用程序的一部分移動到類中,並在內部調用它瞧,它的工作。

+0

很高興你用答案更新了你自己的問題,你能接受答案嗎? :) – Younes 2011-06-24 11:23:10