一步一步学习WCF
本系列博客,主要介绍了有关WCF基础的知识,并附有Demo,通过本系列的博客能够对WCF有一个初步的认识。
LuckyZhouStar
这个作者很懒,什么都没留下…
展开
-
What is WCF
前面几篇博客,都是一些关于WCF零散的知识,下面来宏观的了解下,什么是WCF? WCF:Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架. 1.WCF体系框架 2.框架分析 2.1.什么是契约?——干什么 定义服务公开的方法,使用的传输协议、可访问的地址、传输的消息格式等内容。 2.2.服务运行库——怎么干原创 2015-06-08 17:04:38 · 1405 阅读 · 6 评论 -
Instancing modes in WCF
1.什么是Instancing modes? 通过上图我们可以了解到,客户端每次向WCF服务发送请求的时候,会首先在WCF服务端生成一个服务实例,然后通过服务实例来回应客户端的请求。因此Instancing modes 就表示服务实例在服务器上持久的时间长短,有三种方式。 2.PerCall 不管客户端是否相同,针对于每一次的请求,都会创建一个新的服务实例原创 2015-06-05 17:16:38 · 1129 阅读 · 4 评论 -
Hosting WCF Service
前几篇博客中的实例Demo都是让WCF服务寄宿到控制到应用程序中,这篇来总结一下,常用的几种宿主的方式。 1.Self-Hosting一个WCF服务能够寄宿在控制台应用程序或者WinForms application中。 1.1.优点A.非常容易的建立,把需要的配置都写在配置文件中,代码写的非常少B.非常容易去调试,不用附加进程C.支持所有的Bindings原创 2015-06-05 10:48:29 · 1158 阅读 · 3 评论 -
Unhandled exceptions in WCF
在WCF中,如果我们不处理异常的话,将会造成回话丢失,并阻塞通道的回话。一旦交流的通道处于失败章台,我们就访问不到先前相同的代理类了,因此我们必须要创建一个新的代理类。 BasicHttpBinding:没有回话,因此当遇到错误时,它仅仅原创 2015-06-03 14:39:01 · 1293 阅读 · 3 评论 -
WCF Contracts and Backward Compatibility
WCF contracts are version tolerant by default. Figure 1 and Figure 2 summarize typical changes to service contracts and data contracts and describe the impact to existing clients. In short, the Data翻译 2015-06-03 09:41:19 · 1100 阅读 · 2 评论 -
Difference between datacontract and messagecontract in wcf
在WCF中有两种契约分别是DataContract和MessageContract,这篇博客来讲一下两者的区别。先看一下两者定义契约实体的方式有和不同。 1.数据契约 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.原创 2015-06-02 17:17:45 · 1521 阅读 · 2 评论 -
Different ways of associating known types in wcf
本篇博客讲解一下Known Types这个属性标签,如果翻译过来的话,就叫做已知类型吧!这个标签允许在服务契约中实现多态的行为。有四种方式实现,下面来分别演示一下。 1.User KnownType attribute on the base type. 这种方式是针对于全局的,如果采用这种方式后,全局的服务契约和所有的方法契约将都会默认加上此种方式。 员原创 2015-06-02 16:00:49 · 1193 阅读 · 1 评论 -
WCF DataContract and DataMember
这篇来谈一下WCF中重要的两个成员,WCF DataContract and DataMember,如果我们想在客户端调用服务,就需要标注我们的对象或者对象中的属性为契约对象或者契约成员,这样的话,WCF就会将我们的传输的对象转化为XML的格式进行传输。下面还是来做一个小例子,通过在客户端输入用户ID,来从服务端查询用户的信息;在服务端根据WEB端传输的用户ID去库中进行查询。 1.原创 2015-06-02 09:43:19 · 2450 阅读 · 2 评论 -
How to make changes to wcf service without breaking clients
在上一篇中讲解了,如何让一个WCF服务实现多个WCF数据契约,本篇介绍一个数据契约上的Name属性。先看一下,废话不多说,先看一下Demo。 1、数据契约using System;using System.Collections.Generic;using System.Linq;using System.Runtime.Serialization;using System.Se原创 2015-06-01 10:29:56 · 1262 阅读 · 1 评论 -
WCF service implementing multiple service contracts
在上一篇中,我们创建了一个简单的WCF服务,那么接着在这一篇我们来展示一下,如何让一个WCF实现多个服务契约。 1、创建WCF服务契约 在上一篇中只是创建了一个WCF服务契约,这次为了展示WCF实现多个服务契约,所以创建两个服务契约。 using System;using System.Collections.Generic;using Syst原创 2015-06-01 09:59:49 · 1162 阅读 · 1 评论 -
Creating a WCF Service
从今天起开始跟着一个教程写一个关于WCF的系列博客,希望能够坚持下来。 作为第一篇,来一个简单点的,创建一个WCF服务。先看一张整体的图片。 通过上图可以看出,就是想通过一个WCF服务,来满足两个客户端的需求。一个是java web服务通过http访问,另一个则是windows web 服务通过Tcp访问。下面开始实战。 1.创建WCF服务 先创建一个类原创 2015-05-31 21:49:51 · 1348 阅读 · 3 评论