也許我在這裏錯過了一些基本的東西,所以請糾正我,如果我。我有一個本地服務,並通過WCF進行通信的WinForms應用程序,但我似乎在我的應用程序有很多這樣的代碼拷貝到結束:管理經常呼叫的WCF連接
Public Shared Sub MyLocalMethod1()
Dim tcpBinding As New NetTcpBinding
tcpBinding.SendTimeout = New TimeSpan(0, 0, 5)
Dim tcpFactory As ChannelFactory(Of MyWCFClass.MyWCFInterface) = New _
ChannelFactory(Of MyWCFClass.MyWCFInterface)(tcpBinding, "net.tcp://localhost:4079")
Dim ServiceWCFConnection As MyWCFClass.MyWCFInterface = tcpFactory.CreateChannel
ServiceWCFConnection.MyWCFMethod1()
tcpFactory.Close()
End Sub
我也許應該在某種類型的可以這樣做創建連接的助手類,讓我的服務使用它,然後關閉連接,所以我沒有這個連接代碼的多個副本。但是,我應該讓這個連接斷開嗎,還是每次關閉它都有意義? WinForm通常每隔幾秒鐘就會調用一次服務,所以嘗試使用這些不同的調用都可以訪問的公共副本更有意義,而不是每次都打開一個新的關閉連接。