您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“如何創建使用WCF代理”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何創建使用WCF代理”這篇文章吧。
WCF代理還是比較常用的,于是我研究了一下WCF代理,在這里拿出來和大家分享一下,希望對大家有用。SvcUtil生成的代理類派生自類ClientBase<T>,定義為:
public class ClientBase<T> : IDisposable { protected ClientBase(string endpointConfigurationName); protected ClientBase(Binding binding,EndpointAddress remoteAddress); public void Dispose(); protected T InnerProxy{get;} //其它成員 }
這個InnerProxy屬性是客戶端需要消費的合同類型,并且SvcUtil生成的ClientBase<T>的子類簡單地把它WCF代理到方法調用。客戶端需要實例化一個代理對象并且提供給其構造器端點信息-或者是來自配置文件的端點節名或者是在不使用一個配置文件時的端點地址和綁定對象。然后,該客戶端可以使用代理方法來調用該服務,并且客戶端完成后,它需要關閉該代理實例:
MyContractProxy proxy = new MyContractProxy("MyEndpoint"); proxy.MyMethod(); proxy.Close();
關閉WCF代理將終止與服務的會話并且關閉連接。作為選擇,你可以使用代理的Dispose()方法來關閉它。Dispose()方法的優點在于,你可以使用using語句來調用它,即使在面臨異常處理時:
using(MyContractProxy proxy = new MyContractProxy("MyEndpoint")) { proxy.MyMethod(); }
在客戶端配置文件中的每個合同類型的一個端點可以被指派為一個默認端點。默認端點是一個沒有名字標志或只有一個空名("")的端點節:
<system.serviceModel> <client> <endpoint ... contract="IMyContract" /> <endpoint name="OtherEndpoint" ... contract="IMyContract" /> </client> </system.serviceModel>
一個默認的端點僅僅是一種理想情況;當創建一個針對默認端點的代理時,你可以使用WCF代理的默認構造器來讓它使用默認端點:
MyContractProxy proxy = new MyContractProxy(); proxy.MyMethod(); proxy.Close();
以上是“如何創建使用WCF代理”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。