首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WCF技术剖析之十七:消息(Message)详解(上篇)

所以,消息在整个WCF体系结构中处于一个核心的地位,WCF可以看成是一个消息处理的管道。 尽管消息在整个WCF体系中具有如此重要的意义,可是一般的WCF编程人员,却意识不到消息的存在。...第二,WCF是一个极具可扩展性的通信框架,可以灵活地创建一些自定义WCF扩展(WCF Extension)以实现你所需要的功能。...如同WCF的插件一样,这些自定义的WCF扩展以即插即用的方式参与到WCF整个消息处理流程之中。了解WCF整个消息处理流程是灵活进行WCF扩展的前提。...关于XmlDictionaryReader,在《WCF技术剖析(卷1)》中有详细的介绍,对此不十分了解的读者只需要将其理解为一个特殊的XmlReader就可以了。...1: public class FaultCode 2: { 3: public FaultCode(string name); 4: public FaultCode(string name,

2.6K100

WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理

"> 2: 3: http://www.artech.com/ICalculator/DivideCalculationErrorFault...枚举值 含义 VersionMismatch 命名空间或者名称和规定的SOAP规范不匹配 MustUnderstand 目标SOAP结点不能理解并处理mustUnderstand属性为“true”或者“...下的异常:FaultException 在《WCF技术剖析(卷1)》中,我曾经提到过,在整个WCF体系下,数据存在的形态大体可以分为两种:XML和托管对象(Managed Object)。...WCF建立在.NET平台下,利用托管语言(C#和VB.NET)开发人员提供了一个面向对象的编程模型,所以,在WCF体系最顶层的数据形态表现为.NET托管对象。...WCF框架自动为我们作了这么多“幕后”工作,使得开发人员可以完全采用编写一般的.NET应用程序的模式进行异常的处理:在错误的地方抛出相应异常,对于潜在出错的方法调用进行相应的异常捕获和处理。

1.1K100
您找到你想要的搜索结果了吗?
是的
没有找到

WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理

WCF框架自动为我们作了这么多“幕后”工作,使得开发人员可以完全采用编写一般的.NET应用程序的模式进行异常的处理:在错误的地方抛出相应异常,对于潜在出错的方法调用进行相应的异常捕获和处理。...addressing" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> 2: 3: 2: 3: <a:Action s:mustUnderstand...四、FaultException与MessageFault转换的核心:FaultFormatter 在《WCF技术剖析(卷1)》的第5章关于序列化和数据契约的介绍中,我们谈到:WCF借助于一个特殊的对象...严格地说来,FaultFormatter仅仅是WCF一个内部对象,但是对该对象的深刻认识将非常有助于我们有效的理解WCF整个异常处理机制。

1.4K110

1章 ASP.NET4.0开发技术概述

一、填空题 1. 动态网页技术主要分为客户端动态网页技术和 服务器端动态网页技术 两种。...2..NET Framework由两个主要部分组成:公共语言运行库和 .NET Framework类库 。 二、简答题 1. 叙述静态网页技术的概念及其优缺点。...(4)ASP.NET ASP.NET是建立在.NET框架基础之上的Web程序设计框架,它用来创建Web应用程序。...(1)菜单栏和工具栏中包含了所有的操作命令,提供了进行Visual Studio 2010各项功能选择的主要途径。...叙述创建ASP.NET应用程序的一般步骤。 创建ASP.NET应用程序的一般步骤如下: (1)创建Web项目或网站,并添加网页文件。 (2)布局界面,在网页中添加控件,并设置控件属性。

1.5K20

WCF技术剖析之十七:消息(Message)详解(下篇)

WCF技术剖析(卷1)》自出版近20天以来,得到了园子里的朋友和广大WCF爱好者的一致好评,并被卓越网计算机书店作为首页推荐,在这里对大家的支持表示感谢。...同时我将一直坚持这个博文系列,与大家分享我对WCF一些感悟和学习经验。...在WCF中,定义了一系列类型用于表示SOAP报头。...假设在一个WCF应用中,我们需要在客户端和服务端之间传递一些上下文(Context)的信息,比如当前用户的相关信息。...= “HR/Admiin” 注:在我的文章《[原创]WCF后续之旅(6): 通过WCF Extension实现Context信息的传递》中,我通过WCF扩展的方式实现上面所示的上下文传递。

1.1K60

菜菜从零学习WCF七(消息协定)

attribute)上设置System.ServiceModel.MessageContractMemberAttributre.ProtectionLevel属性(property)来完成     System.Net.Security.ProtectionLevel...  SOAP标准定义了下列可存在于标头上的属性:       Actor/Role(在SOAP1.1中为Actor,在SOAP1.2中为Role)指定要使用给定标头的节点的统一资源标识符       MustUnderstand...指定醋栗标头的节点是否必须理解该标头       Relay指定要将标头中继大下游节点     WCF不会对传入消息的这些属性执行任何处理(MustUnderstand除外)     静态方式将这些属性设置为任何需要的值...在从新版本应用程序向旧版本应用程序发送消息时,系统必需处理额外的标头,同样,反方向操作时系统必需处理缺少的标头    下面的规则适用于标头的版本管理:       WCF不反对缺少标头,相应的成员将保留其默认值...WCF还忽略意外的额外标头,此规则的一种例外情况在传入的SOAP消息中,额外标头的MustUnderstand属性设置为true.在这种情况下,由于存在一个无法处理但必需理解的标头,因此会引发异常。

2.6K41

菜菜从零学习WCF八(Message类)

前言 本次记录主要记录三个重要的内容: Message类概述 使用Message类创建消息 读取Message类消息 第一部分--Message类概述 Message类是WCF的基本类。...相反,您需要使用WCF服务 模型构造(如数据协定、消息协定和操作协定)来描述传入消息和传出协定。...在以下情况下可能需要使用Message类:     需要一种替代方式来创建传出的消息内容(例如,从磁盘上的文件直接创建消息),而不是序列化.NET Framework对象。     ...需要一种替代方式来使用传入的消息内容(例如,需要将XSLT转换应用于原始XML内容),而不是反序列化为.NET  Framework对象。     ...其中一个最简单的重载采用一个用于描述错误的MessageFault对象作为参数 public Message GetDataFault() { FaultCode

79330

WCF技术剖析之三十一: WCF事务编程

至于WCF框架是否有能力对事物进行流转,按照怎样的协议进行流转,则是通过绑定实现的,现在我们首先看看怎样的绑定具有事务流转的能力。...一、绑定对事务流转的支持 《WCF技术剖析(卷1)》中的第3章对绑定的本质进行了深层次的剖析,阅读过本章的读者应该知道:绑定是一系列绑定元素(BindingElement)的有序组合,相应的绑定元素对消息进行相应的处理以实现特定的目标...消息交换是WCF进行通信的唯一手段,任何需要传输的数据最终都需要最为消息的一部分。...图3 客户端端和服务端采用不同的事务处理协议导致的异常(Mandatory) 倘若接收到的消息中存在事务报头,并且报头的MustUnderstand属性为True或者1,对于Allowed选项来说,如果采用非事务绑定...但是,如果MustUnderstand属性为False或者0,事务报头会被忽略。

68460
领券