一、初识WCF
一、WCF优点
- WCF 支持多种通信协议 Http/Https 、TCP/UDP、MSMQ、命名管道、对等网、消息可达性、事务流等。
- WCF 可以与ASP.NET 集成、共享一个上下(HttpContext)。
- WCF 支持多种消息传输格式 :text,binary,mtom,Json 等。
- WCF 安全性要强:支持对称安全、非对称安全、消息安全、传输安全、SSL 流安全、Windows 流安全等。
- WCF 支持多种会话模式:单向、双向、请求/响应。
- WCF 支持REST 。
- WCF 支持多种格式化方式。DataContractSerializer、XmlSerializer、DataContractJsonSerializer 等。
- WCF 支持 WAS hosting、Windows 服务 hosting、Self-Hosting、IIS hosting 等。
- WCF 支持多种并发模式:单例、单调、会话 。
二、必备基础知识
(1) 体系中的角色。
在WCF的结构中,至少应该有两个角色:服务端和客户端。服务端公开一个或多个服务,客户端访问这些服务以获得相应的逻辑。
(2) 服务(Service)和操作(Operation)
服务端公开了一个或多个服务,每个服务都拥有一个或多个操作,客户端通过调用服务的操作来获得服务提供的逻辑。
(3) 终结点(EndPoint)
服务端公开了服务和操作,客户端如何访问到他们呢?就是通过终结点,终结点相当于服务的地址,类似于门牌号,客户端就是循着这个地址来找到服务和操作的。终结点是和服务相对应的,找到了终结点就找到了服务,找到了服务就获得了操作。
(4) 绑定(Binding)
绑定描述了客户端与服务端沟通的方式,双方沟通的语言,或者说协议,双方必须保持一致才能相互沟通,比如一个服务端把服务公开,要求必须用http协议来访问,那么此时绑定就是http绑定,客户端必须用http的方式来与这个服务端通信才能访问到服务。
(5) 元数据(Metadata)
现在服务端公开了服务,客户端循着正确的终结点,持着正确的绑定找到了服务端,此时服务端笑而不语,客户端不知所措,因为客户端根本不知道服务端公布了那些服务、操作、数据。客户端一个调用也写不出来。虽然客户端不需知道服务和操作的具体实现细节,但是它必须知道服务的接口描述(或类型描述)、操作的方法签名,数据的类描述,这些描述就叫做元数据,服务端必须通过某种方法把元数据交给客户端,这种方法叫做元数据交换(Metadata Exchange)。
本文来自博客园,作者:码农阿亮,转载请注明原文链接:https://www.cnblogs.com/wml-it/p/15710056.html
技术的发展日新月异,随着时间推移,无法保证本博客所有内容的正确性。如有误导,请大家见谅,欢迎评论区指正!
开源库地址,欢迎点亮:
GitHub:https://github.com/ITMingliang
Gitee: https://gitee.com/mingliang_it
GitLab: https://gitlab.com/ITMingliang
建群声明: 本着技术在于分享,方便大家交流学习的初心,特此建立【编程内功修炼交流群】,为大家答疑解惑。热烈欢迎各位爱交流学习的程序员进群,也希望进群的大佬能不吝分享自己遇到的技术问题和学习心得!进群方式:扫码关注公众号,后台回复【进群】。