【框架】——WCF
来源:互联网 发布:2017网络最火歌曲 编辑:程序博客网 时间:2024/05/16 01:48
概念:
Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架。
WCF 的基本概念是以契约(Contract) 来定义双方沟通的协议,合约必须要以接口的方式来体现,而实际的服务代码必须要由这些合约接口派生并实现。
契约:
客户端调用服务端的数据,服务,操作,消息等信息时,双方都应提前制定好合约,以实现安全调用。若没有契约,则表明不予调用。
契约分成了四种:
数据契约(Data Contract):制定双方沟通时的数据格式。
服务契约(Service Contract),制定服务的定义。
操作契约(Operation Contract),制定服务提供的方法。
消息契约(Message Contract),制定在通信期间改写消息内容的规范。
格式:
如:操作契约:
[Operation Contract]
ITOO中:
namespace ITOO.ExamEvalQueryResult.Contract{ [ServiceContract]//服务契约 public interface IQueryResultService { [OperationContract]//操作契约 string Test(); [OperationContract]//操作契约 List<AssessScore> QueryAssessScoreByPage(string strConditions, int pageSize, int pageIndex, out int total); }若在此段代码没有[OperationContract]这些契约,在客户端运行时就无法调用此方法。
协议绑定:
由于 WCF 支持了HTTP,TCP,Named Pipe,MSMQ,Peer-To-Peer TCP 等协议,而 HTTP 又分为基本 HTTP 支持 (BasicHttpBinding) 以及 WS-HTTP 支持 (WsHttpBinding),而 TCP 亦支持 NetTcpBinding,NetPeerTcpBinding 等通信方式,因此,双方必须要统一通信的协议,并且也要在编码以及格式上要有所一致。
格式:
如:
<!--角色服务--> <endpoint address="http://192.168.22.242:7054/AuthorityRoleManageService.svc?wsdl" binding="wsHttpBinding" bindingConfiguration="WsHttpBinding_Default" contract="ITOO.AuthorityRoleManage.Contracts.IAuthorityRoleManageService" name="WsHttpBinding_Services" />
总结:
今天敲框架的时候遇到一个错误:
至少需要一个操作,那就是说IQueryResultService里没有写方法喽,打开一看,确实是空的,于是开始在IQueryResultService中添加方法,结果问题依旧没有解决。
通过一系列的查找、尝试,发现真正的原因其实是:没有写[Operation Contract],没有这个契约,及时这里有方法,也调不到啊......
- 【框架】——WCF
- 【WCF】WCF框架学习
- 【WCF】WCF框架创建
- 【wcf】——WCF基础
- MVC+WCF框架下广告位管理——文件上传
- WCF学习笔记——WCF基础
- WCF ——泥沼
- WCF——AddressHeader
- WCF——ABC
- WCF—Binding
- Wcf通讯基础框架方案(一)——基本结构
- 框架设计之成绩登统系统—EF+WCF+MVC(一)
- WCF 框架运行时类图
- WCF简单三层框架
- WCF分布式框架
- WCF框架使用方法
- 统一通讯框架wcf
- 【WCF 1】WCF框架宏观了解
- project euler 79
- Linux I/O调度程序
- Servlet之文件下载
- 感《洛神赋图》
- html5 表格使用基础
- 【框架】——WCF
- Linux crontab 命令格式与详细例子
- arduino DHT11 温湿度传感器
- 关于并差集 Hurstoj 1073病毒 hdu畅通工程
- Servlet之防盗链
- fork http://coolshell.cn/articles/7965.html
- Python_常见库
- Oracle中Hint深入理解及其用例(转来慢慢看)
- 设计模式总览