wcf学习目录

 

摘要:    上一篇文章WCF进阶:扩展bindingElementExtensions支持对称加密传输阐述了如何扩展BindElementExtension来支持在配置文件中配置服务或者客户端代理,本文讲述另外一种应用,通过实现IEndpointBehavior来全局验证操作参数,并且进一步产生比较复杂的配置支持的实现。阅读全文
posted @ 2010-04-18 19:31 Robin Zhang 阅读(2448) | 评论 (5) 编辑
 
摘要:     前面两篇文章WCF进阶:将编码后的字节流压缩传输WCF 进阶: 对称加密传输都是实现了自定义编码,那两个例子中托管服务或者客户端调用都采用的代码实现,WCF更友好的方式是在app.config或web.config来配置服务的运行和调用,本文是介绍如何在配置文件中配置自定义的BindingElement。阅读全文
posted @ 2010-04-17 23:45 Robin Zhang 阅读(2294) | 评论 (3) 编辑
 
摘要:

  大家使用WCF的时候,会不会觉得使用SSL通道传输太麻烦,使用明文传输又觉得不安全呢? 特别是当传递的消息中带有比较敏感,机密的身份信息的时候更是如此呢?我们在上文实现了压缩编码传输,详见WCF进阶:将编码后的字节流压缩传输,本文照葫芦画瓢,实现一个可能大家更为需要的功能,将数据对称加密后传输,好处就是加密速度嗷嗷快,使用起来嗷嗷方便。阅读全文

posted @ 2010-04-13 20:18 Robin Zhang 阅读(3421) | 评论 (13) 编辑
 
摘要:

   正好在园子中看到一篇博文在流模式下保持服务实例的状态的两种设计方式,细心的看了看,发现博主对WCF下流传输做了很深入的研究,但在程序的实现上颇显复杂,没有充分并且灵活的运用WCF的特性,在博主的那篇文章中要实现的目的就是将本地一个文件用流形式传递给远程,并且要求远程和本地的文件名称一致。楼主的实现中,在PerCall模式下一次调用完不成一次传输,需要在调用的过程中,用静态变量保持会话,这样显然过于复杂。其实这个实现非常简单,只需要运用MessageHeader就能轻松解决,我前面的文章WCF 进阶:为每个操作附加身份信息中也提到了,使用MessageHeader能附加用户身份信息,那么附件任何其他信息,行不行,肯定是没问题的。所以。。。。阅读全文

posted @ 2010-04-13 19:00 Robin Zhang 阅读(2337) | 评论 (14) 编辑
 
摘要:

  在前面两篇文章WCF进阶:将消息正文Base64编码WCF进阶:为每个操作附加身份信息中讲述了如何通过拦截消息的方式来记录或者修改消息,这种方式在特定条件下可以改变消息编码格式,但实现方式并不规范,而且使用范围也有限制。 WCF缺省提供了三种编码器(MessageEncoder):TextMessageEncoder,BinaryMessageEncoder,MtomMessageEncoder。事实上也是基于XML可以有三种格式:Text,Binary,MTOM,而XmlDictionaryWr阅读全文

posted @ 2010-04-13 13:59 Robin Zhang 阅读(4502) | 评论 (15) 编辑
 
摘要: 上文WCF进阶:将消息正文Base64编码中介绍了实现自定义MessageInspector来记录消息和实现自定义Formatter来改写消息,本文介绍一下在WCF中使用SoapHeader进行验证的两种实现方法,同时再次复习自定义Inspector和自定义EndpointBehavior。 阅读全文
posted @ 2010-04-11 11:06 Robin Zhang 阅读(4097) | 评论 (9) 编辑
 
摘要: 大家好,很久没有写博文了,平时也是在用WCF做着项目,但不写文,总是感觉对技术的把握不够清楚全面。同时更主要的是和大家缺少很多沟通,有愧疚感呀。好了,闲话少叙,从今天起,我将推出WCF进阶系列博文。和大家一起来继续学习WCF。欢迎板砖! 阅读全文
posted @ 2010-04-11 00:11 Robin Zhang 阅读(2781) | 评论 (20) 编辑
 
摘要: 对WCF比较感兴趣的朋友可能都知道,在.Net 3.5的版本的WCF中增加了Rest支持。也有很多朋友已经使用过WCF Rest,但可能对什么是Rest?为什么要Rest?以及怎么用Rest?等问题并不太了解,通过读取本文可以帮您更深入的理解和掌握WCF Rest,并深层次的了解Rest 风格的特征。阅读全文
posted @ 2010-04-04 22:10 Robin Zhang 阅读(8579) | 评论 (11) 编辑
 
摘要: WCF的承载既可以通过编码(Code)实现,也能够通过配置(Config)实现.而且使用配置,更有利于日后的维护和扩展.WCF缺省的是将全部的服务配置都写到一个config文件中去.这种方式更有利于专业的IT人员对服务进行集中式管理.在很多项目中,这种方式也能解决分工问题.但是它也有一定的弊端,比如: 一个无关紧要的service变动,就需要变动config,而对应用程序config的任何修改非常有可能导致应用程序的重启或者异常.比如在网站中,如果更改web.config会导致Session,Application等的丢失.这些情况就会影响用户的体验.本文使用自定义ServiceHost的方式,实现一个Service对应一个config文件,这样当有service发生修改的时候,管理人员就只需要更改对应的config文件。更好的实现了服务与服务之间的隔离。阅读全文
posted @ 2008-11-02 22:42 Robin Zhang 阅读(3453) | 评论 (9) 编辑
 
摘要: 当ServiceContract非常多的情况下,比如要self-host hundred of service的时候,or更多的时候,每次hosting都是建立一个tcp listen.这样,host的init工作会占用非常多的时间和资源。对于一些对start有较快需求的case,这明显会影响用户体验。本文意在寻求一种技术手段解决这个问题,让service只有在运行时才host。我们姑且称之为host just in time吧阅读全文
posted @ 2008-10-27 02:05 Robin Zhang 阅读(2919) | 评论 (10) 编辑
 
摘要: 上文中谈到了WCF截获消息有四种方式1) 路由法 2) 自定义绑定法 3)实现接口法 4) 跟踪诊断法,上篇文章总结WCF中截获消息的几种方式详细的阐述了前面两种,本文着重阐述后面两种实现方式阅读全文
posted @ 2008-10-25 22:51 Robin Zhang 阅读(3826) | 评论 (7) 编辑
 
摘要: WCF是基于消息机制的,一些功能的实现如寻址,加密等在消息中都会体现的淋漓尽致,WCF中的通道就像车间的流水线,而消息就作为这个流水线上待加工的产品。每经过一个处理位置,相应的通道都会对消息对不同的操作处理。清晰的掌握消息的加工过程对WCF的工作原理,调试跟踪,自定义扩展,性能安全都能非常好的现实意义。而要实现截获消息的目的,通常可以有以下几种办法: 1 路由截获法 2 自定义Binding法 3 实现IMessageInspector接口法 4 跟踪诊断法 四种方法,实现的难度和得到的效果不尽相同。下面逐一阐述实现方式。 阅读全文
posted @ 2008-10-24 21:43 Robin Zhang 阅读(4312) | 评论 (9) 编辑
 
摘要: 几天前,有朋友在QA上问有关WCF中可信赖会话(ReliableSession)的问题。今天重新梳理一下,主要目就是真正的弄清楚可信赖会话的作用,方法和现实意义。阅读全文
posted @ 2008-10-17 19:03 Robin Zhang 阅读(3922) | 评论 (4) 编辑
 
摘要:

WCF从理论到实践系列文章是笔者记录学习WCF历程的一部笔记,至今已有30余篇,涉及到WCF技术绝大多数相关理论知识和丰富的实践实例。这篇索引对上述文章做了一下整理工作,以进一步熟悉掌握WCF技术


阅读全文
posted @ 2008-08-30 09:53 Robin Zhang 阅读(24369) | 评论 (21) 编辑
 
摘要:

发布了[添砖加瓦]:ExtJS+WCF+LINQ打造全功能Grid一文后,得到了很多朋友的关注和支持,之后又更新了几次,导致那篇文章篇幅过长,有些朋友同时提到,这样一种编程方式,手写代码量过大,特别是extjs的代码量尤其繁重,极大的影响了对这种方式的尝试兴趣和信心。因为我也是首次学习ExtJs,在它的应用上,还不能做到得心应手的状态,因此这几天,我又对上篇文章中的实现进行了一次全面的重构。这次重构主要的目的在于:
1) 整理原来比较凌乱的代码 
2) 通过封装,极大减少ExtJs代码量 
3) 让客户端脚本框架extjs与wcf进行更好一些的交互

阅读全文
posted @ 2008-08-18 23:17 Robin Zhang 阅读(9109) | 评论 (36) 编辑
 
摘要: 新扩展的Grid将包括以下功能: 
分页功能 
远程排序功能 
添加新纪录功能 
批量删除功能 
批量更新功能 
2008年8月5日新增功能
1) 筛选功能
2)刷新功能
3)Excel导出功能
2008年8月9日新增功能
1) 扩展了Excel导出功能为导出当前页和导出全部两种
阅读全文
posted @ 2008-08-09 12:55 Robin Zhang 阅读(17297) | 评论 (133) 编辑
 
摘要:

在WCF中有两种不同的方法可以用于创建客户端服务对象,他们分别为: 
1. 代理构造法 
2. 通道工厂法 
本文会从实际应用的角度上,阐述两种方法的一些细节和优劣对比,希望通过学习本文,能掌握什么情况下使用什么样的方式来创建客户端服务代理对象,怎样创建客户端代理对象。本文重点在术,非道。

阅读全文
posted @ 2008-07-26 18:32 Robin Zhang 阅读(10183) | 评论 (31) 编辑
 
摘要:

在前面文章ExtJs与WCF之间的跨域访问已经通过服务端代理的方式解决了ExtJs与WCF跨域访问的问题,那个方案看起来并不怎么优雅,而当我在写过用Restful方式调用WCF进行上传下载后,愕然发现原来WCF支持原生数据(Raw)的返回,这就解决了ExtJs与Wcf之间进行跨域调用中的难题:返回数据必须满足格式。下面根据ExtJs与WCF之间的跨域访问中实现的项目,通过Stream和ContentType的联合使用,返回原生数据给Extjs,从而实现跨域调用。

阅读全文
posted @ 2008-07-17 20:38 Robin Zhang 阅读(5473) | 评论 (13) 编辑
 
摘要:

在前面几篇文章中,分别就WCF如何与Ajax交互,如何返回json数据给Ajax,如何为ExtJs控件提供数据,如何用Http的访问方式异步调用Restful的WCF服务,本文着重讲述如何用Restful方式调用WCFl进行文件的上传和下载。在前面的文章中,曾经写过Restful的WCF支持两种格式的请求和响应的数据格式:1)XML 2) JSON。事实上WCF不光支持上述两种格式,它还支持原生数据(Raw,来源于Carlos' blog)。这样一来,WCF的Restful方式实际上支持任意一种格式的

阅读全文
posted @ 2008-07-14 22:27 Robin Zhang 阅读(10222) | 评论 (36) 编辑
 
摘要:

上周在pedramr blog上看到有人问是否能够异步调用Restful的WCF服务,下面便是具体实现异步调用Restful的WCF实现细节。通过本文的学习,有助于如下知识的掌握: 1) 如何设定WCF的Restful支持 2) 如何异步调用Restful的WCF服务

阅读全文
posted @ 2008-07-12 13:32 Robin Zhang 阅读(5973) | 评论 (28) 编辑
 
摘要:

ExtJs与WCF之间的跨域访问 在上一篇文章<<extjs+wcf+linq实现分页grid>>中用ExtJs与Wcf交互实现了分页Grid,回复中心有灵犀同学希望能采用跨域访问的方式,这个问题其实也困扰了我很久,本来ExtJS用ScriptTagProxy支持跨域访问的,如果服务端是.aspx的页面文件,也非常好实现,但换作WCF,问题就复杂起来。本文尝试解决这个问题,方案不是很巧妙,但是我对多种方案实验中第一个且是唯一有效的办法。

阅读全文
posted @ 2008-07-05 13:46 Robin Zhang 阅读(5691) | 评论 (17) 编辑
 
摘要:

ExtJs+WCF+LINQ实现分页Grid 上篇文章用ExtJs+Wcf+LINQ实现了一个简单的grid,这个网格控件不带分页,本文在上文的基础上添加分页功能,文中会着重介绍如何在用LINQ返回分页数据,如何使ExtJs与WCF进行Restful交互,如何在页面中添加一个带有分页功能的ExtJS的Grid控件。

阅读全文
posted @ 2008-06-29 19:11 Robin Zhang 阅读(7709) | 评论 (18) 编辑
 
摘要:

用ExtJs+Linq+Wcf打造简单grid 上篇文章ExtJs与WCF交互:生成树中阐述了用wcf产生json数据给extjs产生树控件的用法,本文将着重讲述如何用wcf+extjs+linq打造一个支持排序和列刷选的grid

阅读全文
posted @ 2008-06-18 22:16 Robin Zhang 阅读(8533) | 评论 (48) 编辑
 
摘要:

ExtJs与WCF交互:生成树 上文做了下Ajax与WCF进行json交互的简单介绍,本文阐述一个具体的实际应用:ExtJs与WCF交互,生成树.也很简单

阅读全文
posted @ 2008-06-15 10:05 Robin Zhang 阅读(7322) | 评论 (16) 编辑
 
摘要:

Ajax与Wcf交互-JSON 在WCF的序列化中有DataContractJsonSerializer的格式化器,这就使得WCF相比传统的Xml Web Serice多了一种输入输出的编码格式:JSON.本文将介绍如何使用JSON实现Ajax与WCF之间的数据交互.

阅读全文
posted @ 2008-06-14 13:27 Robin Zhang 阅读(7635) | 评论 (17) 编辑
 
摘要:

Ajax与WCF交互-WCF之美 上面一篇博文Ajax访问Xml Web Service的安全问题以及解决方案中谈及xml web service与wcf新老架构对于ajax安全性的问题,得出了结论,但没有具体验证,本文正是为了验证上文中关于新架构MEX结点与业务终结点分离更有利于服务安全的结论,并稍带着讲述如何在vs2008中用ajax与wcf进行交互.

阅读全文
posted @ 2008-06-13 12:19 Robin Zhang 阅读(12188) | 评论 (31) 编辑
 
摘要:

闲聊,乱侃,Ajax访问Xml Web Service的安全问题以及解决方案!具体来说就是两个问题,两种方案,一些思考,和大家分享,共同学习

阅读全文
posted @ 2008-06-12 22:20 Robin Zhang 阅读(8567) | 评论 (22) 编辑
 
摘要:

WCF是一种面向服务的开发技术,它与面向对象是有一定差别的, 本文就在服务契约的层级和数据协定的继承关系上讲述WCF与OO原则的辩证统一关系。

阅读全文
posted @ 2008-04-27 10:26 Robin Zhang 阅读(6163) | 评论 (13) 编辑
 
摘要:

阅读本文,您能了解以下知识 1) 什么是操作重载?操作重载有什么好处 2) WCF的服务端如何解决操作重载的问题? 3) WCF的客户端如何解决操作重载问题? 4) 小结

阅读全文
posted @ 2008-04-21 06:57 Robin Zhang 阅读(7514) | 评论 (34) 编辑
 
摘要:



WCF技术研究团队QA专题


阅读全文
posted @ 2008-04-19 19:39 Robin Zhang 阅读(6870) | 评论 (82) 编辑
 
摘要:

需求变化是软件开发过程中的一大难题,我们经常扼腕叹息:面对变化,我们的软件为何如此不堪一击?我们常常在众多需求变化导致的功能爆炸中疲于奔命,甚至迷失自我!这到底为什么?面对"拥抱变化"这种得呐喊,我们的感受应该是震耳欲聋,还是振聋发聩?如果你仍在困惑,可以来看一看WCF是如何摆脱这种困境的!

阅读全文
posted @ 2008-04-16 17:59 Robin Zhang 阅读(5853) | 评论 (24) 编辑
 
摘要:

正所谓磨刀不误砍柴工,虽然VS2008为我们提供了WCFServiceLibrary项目模板,但在实际开发的时候,我们通常更喜欢按照自己的方式来建立WCF项目,通常情况下,我们将服务契约(通常是接口)数据契约,消息契约等契约单独作为一个项目,而将服务的实现作为另外一个项目,除此之外,还包括WCF服务的宿主程序,服务代理项目,客户端程序.我按照这种方式,作了一个WCF解决方案的通用模板

阅读全文
posted @ 2008-04-13 16:35 Robin Zhang 阅读(8286) | 评论 (27) 编辑
 
摘要:

上文中我们欠缺了一个最重要的功能:事务投票,所谓事务投票就是一种灵活控制事务提交的方式,有时我们希望当操作中只有某个数据满足具体条件的时候,才能赞同事务提交,这样上文的实现明显就不满足需求了,此时我们可以用OperationContext.Current.SetTransactionComplete();显示的进行投票。注意,WCF的事务必须在全票通过的时候才能得以提交。本文还是结合银行的例子 来演示一下事务投票,并且搭配一个漂亮的WPF客户端,可谓买一送一了,:)。

阅读全文
posted @ 2008-04-04 22:22 Robin Zhang 阅读(5434) | 评论 (11) 编辑
 
摘要:

通过阅读本文,您能了解以下知识 1) 如何在WCF中实现事务? 2) 谈谈事务隔离方式的相关知识 3) 事务的实现会给我们编程带来什么样的阻力? 4) 一笔带过,WCF是如何实现分布式事务的? 5) 代码不骗人,用一个银行存取款的范例来演练WCF事务

阅读全文
posted @ 2008-03-30 21:54 Robin Zhang 阅读(8632) | 评论 (19) 编辑
 
摘要:

通过阅读本文,您能了解以下知识 1) 如何在WCF中实现异步 2) 异步操作的优缺点及其应用场合 3) 总结对比各种异步操作的实现方式 4) 代码不骗人,实现一个WCF异步小范例

阅读全文
posted @ 2008-03-27 22:53 Robin Zhang 阅读(8595) | 评论 (27) 编辑
 
摘要:

通过阅读本文,您能理解以下的知识 1) WCF中存在哪几种异常处理方式? 2) 各种异常处理所适用的应用场合? 3) WCF中常见的异常类型? 4) 代码不骗人,用示例来演示效果,加深印象

阅读全文
posted @ 2008-03-08 20:51 Robin Zhang 阅读(10259) | 评论 (16) 编辑
 
摘要:

通过阅读本文,您可以了解以下知识: 1) WCF中有哪几种对象实例模式? 2) 几种实例模式下对象的生命周期? 3) 各种实例模式的应用场合? 4) 使用不同的实例模式,需要注意的有哪些? 5) 代码不骗人,用一个小范例来看看不同实例模式的区别?

阅读全文
posted @ 2008-03-01 20:49 Robin Zhang 阅读(9011) | 评论 (43) 编辑
 
摘要:

通过阅读本文,您能理解以下知识: 1)如何实现一个基于duplex的事件广播 2)解析在实现duplex事件广播中的几个问题

3)初步探讨一下异步 阅读全文
posted @ 2008-02-24 12:06 Robin Zhang 阅读(11794) | 评论 (26) 编辑
 
摘要:

通过阅读本文,您能理解以下知识: 1) WCF定义了哪几种消息交换模式? 2) One-Way Calls 3) Request/Reply 4) Duplex 5) 用示例来解析WCF的消息交换模式

阅读全文
posted @ 2008-02-17 20:37 Robin Zhang 阅读(12876) | 评论 (35) 编辑
 
摘要:

过阅读本文,能使您获得以下知识: 1)WCF的架构图 2)WCF架构的关键元素及其概念 3)创建一示例程序,并对其按架构图进行解析

阅读全文
posted @ 2008-02-16 21:59 Robin Zhang 阅读(24399) | 评论 (35) 编辑
 
摘要:

通过阅读本文,您能了解以下知识: 1)WCF中的Binding是什么? 2)Binding的组成? 3)Binding Element 的分类? 4)Binding描述了哪些层面的信息? 5)如何选择正确的Binding

阅读全文
posted @ 2008-02-03 11:47 Robin Zhang 阅读(17955) | 评论 (24) 编辑
 
摘要:

通过阅读本文,您能了解以下知识: 1) Address是什么? 2) Address的组成? 3) 如何在配置文件中指定Address? 4) 如何通过编程方式设置Address? 5) Address有什么特殊应用?

阅读全文
posted @ 2008-01-30 21:00 Robin Zhang 阅读(13147) | 评论 (19) 编辑
 
摘要: 通过阅读本文,能解决以下的问题 1)什么是契约? 2)契约有几种?,他们都有什么用途 3)如何定义契约? 4)契约是独立于平台的么? 5)契约和以往哪种技术比较相像,又有什么不同? 阅读全文
posted @ 2008-01-28 11:25 Robin Zhang 阅读(15581) | 评论 (18) 编辑
 
摘要:

通过阅读本文,能解决如下问题: 1) WCF与以往的分布式技术有何区别? 2) WCF 在安全性方面做了哪些改进? 3) WCF在性能方面有那些改进? 4) WCF开发模型和以往的其他分布式技术有何区别?

阅读全文
posted @ 2008-01-26 13:16 Robin Zhang 阅读(16748) | 评论 (11) 编辑
 
摘要:

通过阅读本文,能解决以下几个问题 1. WCF是什么? 2. WCF能干什么? 3. WCF的今生前世? 4. 学习WCF有哪些资源?

阅读全文

 

posted on 2013-04-09 21:09  larryle  阅读(313)  评论(0编辑  收藏  举报