WCF基础知识

简介:
【学习背景】
	在之前的几篇博客中,我们了解到了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基础知识之完结
在我以前的wcf博客中,我倾向于通过一个具体的问题来引出一个wcf的技术知识点,这得到了园友们的支持,我在这里向支持我的朋友们说声谢谢,谢谢你们的支持。但是也得到了很多的建议,今天有园友通过QQ联系我说,我讲的内容虽然说有知识点,但是知识点太分散,不能完整的理解wcf的各个知识点的作用以及相互之间的联系,我听后觉得很有道理,所以我放弃我以前的分散写wcf知识点的做法,改成一个系列一个系列的进行,这样可以让大家更好的更完整的掌握wcf的精髓。
787 0
|
XML 网络协议 数据格式
wcf基础知识之端口共享 portSharing
现在时间已经是凌晨一点了,我准备了端口共享的内容,但是因为时间太晚,明天还要上班,所以我们就不长篇大徐了,剪短的说明一下内容,让大家明白就可以了。 今天来说一下端口共享,什么是端口共享呢?在wcf中,所谓的端口共享其实就是一个服务的地址为http://127.0.0.1:80/calService,而另一个服务的地址也为http:127.0.0.1:80/weatherService,但是端口是一样的,在wcf中这其实是不能运行的。
695 0
|
网络协议 网络架构 负载均衡
wcf基础知识之ListenUri和ListenUriMode实现 逻辑地址和物理地址的分离
在上一篇博客中介绍了TcpTrace的使用,并且说到要使用TcpTrace最简单的方法就是设置ClientViaBehavior的viaUri的值。但是没有说这个值表示的是什么意思?其实这个值表示的物理地址。
756 0
|
网络架构 程序员
wcf基础知识之 查看soap消息 TcpTrace
今天本来准备了wcf的三种消息模式 wcf 基础知识 之 消息交换模式 response/reply oneway deplex  的介绍,但是考虑到里面有说到soap消息,但是可能还有一些朋友对如何查看soap消息还不是很清楚,所以这次先来把如何查看wcf通信的介质--soap消息介绍一下。
996 0
|
XML 网络架构 数据格式
wcf 基础知识 之 消息交换模式 response/reply oneway deplex
wcf支持请求-回复(response-reply)、单工(oneway)以及双工(duplex)三种消息交换模式。今天我们来说一下第一种消息交换模式--请求--回复,请注意这里是消息交换模式。 请求-回复消息交换模式是默认的wcf通信方式,如果我们不显式的设定消息交换模式,那么它就是response-reply模式。
804 0
|
前端开发 Windows 机器人
wcf 基础教程 第一讲 wcf基础知识
最近工作有点忙,感觉有点累啊,很久没有更新博客了,看到自己的博客访问量日渐下降,我于心不忍,决定还是重新开博来吸引大家的关注。这次要说的不是别的,正是大名鼎鼎的wcf。或者在中间我会穿插MVC的说明,毕竟上一个系列MVC也没有写完就过年了,这次希望能坚持到底。
954 0
wcf 基础教程 第一讲 wcf基础知识 在IIS中承载wcf服务
在上一篇博客wcf 基础教程 第一讲 wcf基础知识中,因为篇幅过长,所以我选择在这一篇把wcf用IIS承载的方式介绍一下。 首先我们在WebHosting web项目中创建一个.svc的文件,这里我建议之间添加一个类,然后把文件后缀改成.svc就可以。
969 0
|
10月前
|
前端开发
WCF更新服务引用报错的原因之一
WCF更新服务引用报错的原因之一
|
9月前
|
C# 数据安全/隐私保护
c#如何创建WCF服务到发布(SqlServer版已经验证)
c#如何创建WCF服务到发布(SqlServer版已经验证)
39 0
|
9月前
|
安全 数据库连接 数据库
WCF服务创建到发布(SqlServer版)
在本示例开始之前,让我们先来了解一下什么是wcf? wcf有哪些特点? wcf是一个面向服务编程的综合分层架构。该架构的项层为服务模型层。 使用户用最少的时间和精力建立自己的软件产品和外界通信的模型。它使得开发者能够建立一个跨平台的安全、可信赖、事务性的解决方案。且能与已有系统兼容写作。 简单概括就是:一组数据通信的应用程序开发接口。
66 0