2009-10-08 106 views
0

我們有一個網站託管着心臟互聯網,並且正在看到一些奇怪的行爲,並且不知道在這個階段可能會導致什麼。WCF服務間歇性問題

似乎在隨機間隔我們的WCF Web服務將停止工作。服務器將返回服務無法啓動的消息(System.ServiceModel.ServiceActivationException)。我不確定如何真正看到這個例外是什麼。

奇怪的是,如果我們重新上傳我們的Web項目的dll和pdb,並通過我們的主機配置工具手動回收應用程序池,Web服務將再次運行。

有沒有人有任何想法,爲什麼會發生這種情況?大概這是主機的一個問題,但知道他們的技術支持有多糟糕,我不願意讓他們沒有任何想法來解決問題。

在此先感謝

回答

2

你可以嘗試添加此服務行爲(serviceDebug),以獲得在您的訊息異常的細節(但請不要忘記:其他人也可能會得到所有這些細節,所以也許你不不想讓這個....)

<system.serviceModel> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="YourServiceBehavior"> 
      <serviceDebug includeExceptionDetailInFaults="True" /> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 

然後當然你必須設置服務的behaviorConfiguration引用此配置:

<service name="....." behaviorConfiguration="YourServiceBehavior" .. > 

這可以給你更多的信息,以防萬一發生異常。其次:爲什麼你要上傳pdb文件?那些只包含調試符號 - 通常既不需要也不需要生產系統(但我認爲這與手頭的問題沒有任何關係)。

Marc

+0

感謝您的意見。我會添加配置設置,看看它發生了什麼。關於pdb文件 - 我認爲它是需要的:) 我只是從默認設置的VS2008中發佈網站,並將pdb文件與bin文件夾中的dll一起輸出。沒有專門研究pdb文件是什麼,我簡單地認爲它是需要的。我不會在未來上傳它。 – Sergio 2009-10-08 12:47:46