WCF返回值適用場景分析
WCF開發(fā)平臺的出現,在一定程度上改變了開發(fā)人員的變成習慣。我們接下來會為大家介紹一下有關WCF返回值的相關應用方式,以此來幫助大家理解這一工具的應用方式,從而幫助我們在開發(fā)中獲得幫助。#t#
WCF返回值集成開發(fā)環(huán)境包括許多新的和改進的用于提高工作效率的功能。IDE 還進行了重新設計,從而向開發(fā)人員提供對.NET Framework 組件的直接訪問。下面就這個問題進行解釋說明。
保留要進行流處理的數據的參數必須是方法中的唯一參數。如:要對輸入消息進行處理,則該操作必須正好具有一個輸入參數。同樣,如果要對輸出消息進行流處理,則該操作鼻息正好具有一個輸出參數或一個WCF返回值。
參數和返回值的類型中至少有一個必須是Stream,Message或IXmlSerializable.
適用場景
- [ServiceContract]
 - interface IMyContract
 - {
 - [OperationContract]
 - Stream StreamReply1( );
 - [OperationContract]
 - void StreamReply2(out Stream stream);
 - [OperationContract]
 - void StreamRequest(Stream stream);
 - [OperationContract(IsOneWay = true)]
 - void OneWayStream(Stream stream);
 - }
 
流處理機制在特定的綁定協議中才能使用,目前是BasicHttpBinding,NetTcpBinding,和NetNamedPipeBinding支持流處理模型。但是在默認情況下,WCF禁止流處理模式。
流傳輸模式使用TransferMode進行配置,TransferMode為枚舉類型:
- public enum TransferMode
 - {
 - Buffered = 0 ,Streamed =1,StreamedRequest =2,StreamedResponse =3
 - }
 
WCF返回值配置文件中定義流傳輸模式:
- < basicHttpBinding>
 - < binding name="basicHttpBinding" receiveTimeout="10:10:10"
 
transferMode="Streamed" maxReceivedMessageSize="200000" />- < /basicHttpBinding> < netTcpBinding>
 - < binding name="netTcpBinding" receiveTimeout="10:10:10"
 
transferMode="Streamed















 
 
 





 
 
 
 