2012-04-02 73 views
1

我設計的工具(在.NET)它可以連接到第三方的Web服務API,並且一旦連接創建一個單一的客戶端參考該API 。這個單個客戶端實例需要重用於其他幾個將使用客戶端作爲代理來執行其方法的類。完成後,我需要關閉此單個客戶端與API的連接。如何創建一個通用的客戶端類,連接和共享連接

我可以創建一個實例,並在所有其他類傳遞一個參考吧。或者我可以使用靜態類,但這並不是最好的方式。

什麼是最好的面向對象設計,我可以用它來創建和共享此單一客戶實例?我應該創建一個基類,並在我的其他類中繼承它,並且它們以某種方式使用單個公共客戶端引用?

我無法理解它。

回答

0

如果這是一個WinForms應用程序,使之靜是OK。無論如何,它始終由同一個線程重用。

你應該還是有一定的邏輯的地方,不過,對付的是,共享代理獲取故障的可能性。當您撥打的服務中存在異常情況時會發生這種情況。一旦出現故障,代理不能再使用,必須更換。

因此,更好的方法是創建一個公開,其獲取潛在的代理被指責的情況下,獲得{}更換連接屬性是獨生子。