我们一起学习WCF第四篇单通讯和双向通讯

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: |||超大  

前言:由于个人原因很久没有更新这个系列了,我会继续的更新这系列的文章。这一章是单向和双向通讯。所谓的单向就是只有发送却没有回复,双向是既有发送还有回复。就是有来无往代表单向,礼尚往来表示双向。下面我用一个简单用例图表示一下(其中一个老师很严厉说的话大家都默默接受,另一个则相反)

首先我们先看单向通讯:

第一步:编写服务协定

1[ServiceContract(Namespace ="singleTrans")]2publicinterfaceITeacher3{4[OperationContract(IsOneWay =true)]5voidSpeak(stringmessage);6}

单向服务协定

注释1:IsOneWay =true 表示单向通讯,false表示双向通讯

第二步:完成服务协定

1publicvoidSpeak(stringmessage)2{3Console.WriteLine("老师下达的命令:{0}",message);4}

实现协定

第三步:配置服务器(同前几篇)

第四步:客户端调用运行结果

那么单向通讯就完成了。

现在我们修改一下服务协定

协定

[ServiceContract(Namespace="singleTrans")]publicinterfaceITeacher

{

[OperationContract(IsOneWay=true)]stringSpeak(stringmessage);

}

实现publicstringSpeak(stringmessage)

{

Console.WriteLine("老师下达的命令:{0}",message);return"保证完成任务";

}

修改版

运行结果:

出现错误了所有总结:

启用单向通讯的方法,不能有返回值(void可以),不能有out参数,只允许传入参数

现在我们在来看一下双向协定

把刚刚的IsOneWay = false。然后在次运行看看结果

这回就成功了,既调用了服务,也得到了返回的数据。

这一篇也表面也很简单,但是很多更深的需要自己去理解去想。

源码下载

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航