2016-08-13 77 views
0

我是新來的WCF和我感興趣的是調用一個服務方法的最佳實踐。該應用程序將包括在一堆的形式,我想知道這是否是更好地申報爲全球客戶實例爲每個表單,然後就調用的方法需要的時候。或者更好的是在每個方法調用之前實例化客戶端代理並在之後關閉它。WCF客戶端初始化和方法調用

回答

0

我相信客戶端創建一個全局變量爲每個表單你會做,沒必要調用服務方法之前,每次實例化的服務。

public MyService ser {get; set;} 

裏面的類構造函數。

ser = new MyService(); 
0

最簡單和最安全的方法是每次使用它時構造客戶端代理。 這種方法的缺點是性能比較鬆動,但根據您的綁定(HTTP,的net.tcp等)和服務模式(PerCall,有狀態,辛格爾頓),你不會注意到其中的差別(見這個答案WCF Proxy Pooling - Is it worth it?)。

如果你創建表單級別的代理,當該代理處於故障狀態(因爲連接問題),你將無法再使用它,將不得不重新打開的形式。