掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
在編程中現(xiàn)在有一個詞代理,想必大家也都知道,下面我們就WCF生成代理和大家分析一下。對于一個好的分布式系統(tǒng)來講,設計時應當考慮到異構性、開放性、安全性、可擴展性、故障處理、并發(fā)性以及透明性等問題?;赟OAP的Web Service可以實現(xiàn)異構環(huán)境的互操作性,保證了跨平臺的通信。

#T#利用WSE(Web Service Enhancements)可以為ASMX提供安全性的保證。.NET Remoting具有豐富的擴展功能,可以創(chuàng)建定制的信道、格式化器和代理程序。Enterprise Service(COM+)提供了對事務的支持,其中還包括分布式事務,可實現(xiàn)故障的恢復。MSMQ可以支持異步調用、脫機連接、斷點連接等功能,利用消息隊列支持應用程序之間的消息傳遞。從功能角度來看,WCF整合了ASMX、.Net Remoting、Enterprise Service、WSE以及MSMQ等現(xiàn)有技術的優(yōu)點,它提供了一種構建安全可靠的分布式面向服務系統(tǒng)的統(tǒng)一的框架模型,使軟件研發(fā)人員在開發(fā)分布式應用時變得更加輕松。
(1)WCF生成代理類
- publicpartialclassSearchApplicationAdminWebServiceClient:System.ServiceModel.ClientBase
,
ISearchApplicationAdminWebService- {
- publicSearchApplicationAdminWebServiceClient()
- {
- InspectorBehaviormessageInspectorBehavior=base.ChannelFactory.Endpoint.Behaviors.Find
(); - if(messageInspectorBehavior==null)
- {
- base.ChannelFactory.Endpoint.Behaviors.Add(newInspectorBehavior());
- }
- }
- ....
- }
(2)WCF生成代理利用channelFactory
- ChannelFactory
channelFactory=newChannelFactory
("CustomBinding_ISearchApplicationAdminWebService");- InspectorBehaviormessageInspectorBehavior=channelFactory.Endpoint.Behaviors.Find
(); - if(messageInspectorBehavior==null)
- {
- channelFactory.Endpoint.Behaviors.Add(newInspectorBehavior());
- }
- varserver=channelFactory.CreateChannel();

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流