初识WCF

WCF 架构图

       

   本学习是根据大牛Artech学习的,再次写博客只是巩固学习。

       如有需要参考:

Artech |我的WCF之旅

     Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口,它是.NET框架的一部分,由 .NET Framework 3.0 开始引入,与 Windows Presentation Foundation及 Windows Workflow Foundation并行为新一代 Windows 操作系统以及 WinFX 的三个重大应用程序开发类库。

学习WCF应该明白,WCF是干什么的,包括哪些内容,如开在开发实践中运用。
WCF的服务不能孤立地存在,需要寄宿于一个运行着的进程中,我们把承载WCF服务的进程称为宿主,为服务指定宿主的过程称为服务寄宿(Service Hosting)。在我们的计算服务应用中,采用了两种服务寄宿方式:通过自我寄宿(Self-Hosting)的方式创建一个控制台应用作为服务的宿主(寄宿进程为Hosting.exe);通过IIS寄宿方式将服务寄宿于IIS中(寄宿进程为IIS的工作进行W3wp.exe)。客户端通过另一个控制台应用模拟(进程为Client.exe)


WCF: WCF采用基于契约的交互方式实现了服务的自治,以及客户端和服务端之间的松耦合。WCF包含四种类型的契约:服务契约数据契约、消息契约和错误契约


我看来Artech的文章 ,大牛是自己设计的WCF整个实现过程,可能对于刚刚学习的不太容易理解,这里,我根据自己的理解先来个VS template 新建一个解决方案。然后,大家有兴趣可以学习Artech大神的文章了。


我使用的是VS2103 ——》new project--》 WCF service application;

在项目文件中会发现,有两个默认生成的文件Iservice.cs 和 Service1.svc ,使用vs 自动创建的references 中,有system.ServiceModel;

system.serviceModel ,WCF框架的绝大部分实现和API定义在该程序集中;

然后我们将自动生成的文件删除。建立自己的contracts和service。(contracts 服务契约,上面说过WCF包含四种契约,Service 提供对WCF实现,说白了,就是通过接口实现契约。)

 

原文地址:https://www.cnblogs.com/fandong90/p/4975203.html