當使用自定義的ServiceHostFactory時是否需要Dispose()?當使用自定義的ServiceHostFactory時,是否需要Dispose()?
在我的WCF .svc文件我已經定義了一個自定義的工廠爲: <%@ ServiceHost Factory="Service.ServiceHostFactory" %>
看來,一個dispose()不被因爲被覆蓋的CreateServiceHost()方法不會被調用在每次執行所謂的調用該服務的應用程序。 (另外,在每次調用之後都不會執行日誌記錄,並且我生成的trace.xml文件表示它正在被另一個進程使用)。
我確實有用 [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)]
裝飾的服務,所以我期望別的事情正在發生,我不知道。在創建服務的實例的客戶端應用程序中,我通過finally塊處理引用Dispose(),但是需要在服務器端的Factory中執行類似的操作嗎?
Finally
service.Dispose()
End Try
感謝
我們正在使用代理服務器運行,所以我想知道...如果服務主機是在特定服務器上創建的,請說代理服務器,是否會限制隨後創建的實例的位置?我遇到問題,看起來服務的實例無法訪問。 – McArthey
服務實例將在運行服務主機的任何地方運行。 – carlosfigueira
感謝您的確認。理解這一點,並閱讀您的博客,已經很大程度上提高了我的理解。 – McArthey