WCF基础知识

简介: <pre><span style="font-family:KaiTi_GB2312; font-size:18px"><strong>【学习背景】</strong><span style="white-space:pre"> </span>在之前的几篇博客中,我们了解到了WCF从哪里来,什么是WCF,这篇博客,我们继续学习有关WCF的基础知识。<strong>【学习内容】</stro
【学习背景】
	在之前的几篇博客中,我们了解到了WCF从哪里来,什么是WCF,这篇博客,我们继续学习有关WCF的基础知识。
【学习内容】
	一.地址
	1.地址格式
		地址通常采用如下格式:
			[基地址] / [可选的URI]
		基地址(Base Address)通常的格式如下:
			[传输协议] : // [机器名或域名] [:可选端口]
	ITOO学籍管理示例:

                       

	含义是:
		采用HTTP协议访问localhost机器,BasicStudentService服务在8335端口处等待用户的调用。
	2.地址类型:
		TCPHTTPPeer network(对等网)、IPC(基于命名管道的内部进程通信)、MSMQ
 
	.契约
	1.是什么:
		与平台无关,是描述服务功能的标准方式。
	2.契约类型:
		服务契约(Service Contract):描述了客户端能够执行的服务操作。
		数据契约(Data Contract):定义了与服务交互的数据类型。
		错误契约(Fault Contract):定义了服务抛出的操作,以及服务处理错误和传递错误到客户端的方式。
		消息契约(Message Contract):允许服务直接与消息交互。极少使用
	3.定义与使用:

                       


.托管

1.有何而来:

每个WCF服务都必须托管。在Windows进程中,该进程被称为宿主进程(Host Process。单个宿主进程可以托管多个服务,而相同的服务类型也能够托管多个宿主进程中。宿主可以由IIS提供,也可以由WindowsVistaWindows激活服务提供,或者开发者直接将它作为应用程序的一部分。

2.IIS托管:

优势:宿主进程可以在客户端提交第一次请求的时候自动启动,还可以借助IIS管理宿主进程的生命周期。

缺点:只能使用HTTP协议。

3.Web.Config文件:

配置文件中必须列出需要公开为服务的类型。类型使用类型全名,如果服务类型来自于一个没有被引用的程序集,则还需要包括程序集名:

ITOO学籍管理模块:

.绑定

1.从何而来:

服务之间的通信方式多种多样,可能存在多种通信模式。

同步/异步请求、即时/持久消息;

传输协议也有多种;消息编码格式也存在多种,消息的安全保障也有多种策略。

客户端与服务必须合理的组合这些选项,才能保障通信的顺畅。

为了简化这些选项,使它们易于管理,WCF引入了绑定。

2.是什么:

一个绑定封装了诸如传输协议、消息编码、通信模式、安全性等相关选项的集合,使它们保持一致。

3.9种标准绑定:

基本绑定(Basic Binding):由BasicHttpBinding类提供。

其它绑定:TCP/对等网/IPC/Web服务/WS联邦/WS双向/MSMQ/MSMQ集成绑定。

    基本绑定的格式与编码:

BasicHTTPBinding: HTTP/HTPPS协议,Text/MTOM编码格式,支持互操作性。

五.终结点:

     1.是什么:
     服务与地址、绑定以及契约有关。
     其中,地址定义了服务的位置,绑定定义了服务通信的方式,契约定义了服务的内容。
     WCF中便用终结点表示这样一种组成关系,终结点就是地址、契约与绑定的混成品。
2.管理方式配置终结点:

ITOO中终结点的配置:

学习心得】

通过这一次的学习,算是把WCF的基础知识系统的学习了一遍。之前总是在代码中知道,有个模板怎么写,自己也就跟着那么写,并不清楚,代码的具体内涵。而现在有了代码和基础知识的结合,自己也明白了为什么会这么写,以及这么写的含义。这些基础知识点,还是需要自己点点滴滴去积累的。


目录
相关文章
|
安全 数据安全/隐私保护
WCF安全1-开篇
WCF安全1-开篇
127 0
WCF安全1-开篇
|
Web App开发 网络协议 .NET
|
安全 Windows 网络协议