2011-02-18 29 views
-1

我部署了一個調用函數的webservice,這需要超過5到6個小時。我在我的asp.net頁面上使用了這個web服務,我正在異步地調用這個web服務。那麼我應該如何增加webservice的時間?WebService超時

回答

3

如果您正在調用需要5-6小時完成的功能,則可能需要重新考慮您的架構。用戶是否會坐在頁面上等待5到6個小時,以便完成流程?可能不會。也許你可以讓你的web服務在數據庫,xml文件或其他數據存儲完成時設置一個指示器。然後,在你的asp.net頁面中,你可以點擊一個按鈕或者完成一些其他的操作來檢查這個指標,看看這個過程是否已經完成。

+0

從asp.net頁面查看我的場景我只是通過傳遞一些參數到webservice來觸發webservice。在web服務中,它獲取參數並執行其功能並在db中進行更新。所以,我可以在web服務調用完成後隨時關閉asp.net頁面。我的問題有時候webservice會用updaintg db運行成功,有些時候它不能更新db,我相信用db編寫的代碼是完美的,那麼webservice是否有自己的超時以及如何配置呢? – 2011-02-18 20:18:12

+0

所以,asp頁面真的不在乎工作是否失敗,但你呢?爲什麼不讓Web服務向你發送一封電子郵件或其他東西? – DevSlick 2011-02-18 20:27:37

1

如果您沒有問題在具有長超時你的web服務的所有請求,您可以設置

<httpRuntime executionTimeout="300"/> 

<system.web> 
在你的web.config,其中300是在幾秒鐘內你的超時

但是,作爲DevSlick answers,您可能想重新考慮您的架構,Web服務並不適用於長時間運行的任務,您可能希望創建一個缺點ole應用程序按計劃運行。

2

你需要機會executionTimout在你的web.config喜歡的東西大:

executionTimeout單位爲秒。

<configuration> 
    <system.web> 
     <httpRuntime executionTimeout="21600"/> 
    </system.web> 
</configuration> 
相關問題