[WCF编程]12.事务:Transaction类】的更多相关文章

一.概述 .NET2.0在命名空间System.Transactions下提供了Transaction类,它表示所有.NET事务管理器使用的事务. [Serializable]public class Transaction : IDisposable, ISerializable{ //...... public static Transaction Current { get; set; } public void Dispose(); public void Rollback(); pub…
一.事务协议 总体来说,WCF开发人员不需要涉及事务协议与管理器.我们应该依赖WCF来选择相应的事务协议和管理器,重点关注业务逻辑的实现. WCF是根据事务范围里的参与个体来选择事务管理协议的.事务管理协议之间的差别与远程调用.通行协议,以及跨越的系统边界有关. 可选择的管理协议如下: 轻量级事务协议 这个协议只在本地同一个应用程序域内的上下文环境里管理事务,他不能跨越应用程序边界来传播事务(更不能跨越进程或机器边界了),也不能跨越服务边界(从客户端到服务段).轻量级协议只能在单个服务内部或同一…
一.事务概述 维护系统一致性和正确地处理错误恢复挑战的最佳方式是使用事务. 一个事务就是一个复杂操作的集合,这个集合中任何一个操作的失败都会引起整个集合的失败. 尽管在事务进行时系统被允许暂时出于不一致的状态,但是一旦事务结束,系统一定会处于一直的状态. 事务资源 事务编程需要资源(如数据库或消息队列)一起协作,这类资源要能够参与事务并回滚在事务中发生的变化. 一般情况下,我们必须通知这些希望执行事务性工作的资源,这个行为称为在事务中登记资源.一些资源支持自动登记,也就是说它们能够检测到自身是否…
一.投票与提交 虽然WCF负责事务传播及两阶段提交协议的管理工作,但是 她不知道事务是否应该提交或终止.这需要根服务告诉WCF应该何时启动两阶段提交协议.是提交还是终止.WCF提供了两种编程模式来对事务的结果进行投票,即声明式和显式模式. 声明式投票 WCF可以代替服务自动完成提交或终止事务的投票.自动投票是通过OpreationBehavior的TransactionAutoComplete属性来控制的. TransactionAutoComplete属性的默认值为true,可以如下使用: /…
一.设置环境事务 默认情况下,服务类和操作没有环境事务,即使客户端事务传播到服务端也是如此. 尽管强制事务流从客户端传播过来,但服务端的环境事务依旧为null.为了启用环境事务,每个操作必须告诉WCF启用事务.为了解决这个问题,WCF提供了OperationBehaviorAttribute的TransactionScopeRequired属性: // 指定服务方法的本地执行行为.[AttributeUsage(AttributeTargets.Method)]public sealed cla…
一.事务传播概述 WCF可以跨越服务边界传递事务.这可以让服务参与到客户端事务里,客户端还可以在同一个事务里调用多个服务.客户端本身不一定是WCF服务.客户端事务是否传播到服务端可以通过绑定和操作契约契约的设置来控制. 我们把能够支持客户端事务传播给服务端的绑定称为"事务感知"型绑定. 只有TCP.IPC和WS绑定支持事务传播. 二.事务流与绑定 默认情况下,事务感知型绑定并不会传播事务.服务宿主或管理员必须明确设置服务接收进入的跨越组织或业务边界的事务. 为了支持事务传播.就必须在服…
自.NET2.0以来增加了System.Transactions命名空间,为.NET应用程序带来了一个新的事务编程模型. 这个命名空间提供了几个依赖的TransactionXXX类.Transaction是所有事务处理类的基类,并且定义了所有事务类都可以使用的属性.方法和事件.CommittableTransaction是唯一个支持提交的事务类,这个类有一个Commit()方法,所有其他事务类都只能执行回滚. 本文将通过银行转账的示例介绍基于 Transaction 类的分布式显式事务的用法.…
一.服务 服务是一组公开功能的集合. 服务内部包含了如语言.技术.版本与框架等概念,服务之间的交互只允许使用规定的通信模式 外界客户端并不知道服务内部的实现细节,所以WCF服务通常通过元数据的方式描述可用的功能及服务可能采用的通信方式 WCF不允许客户端直接与服务交互,客户端总是使用代理将调用转发给服务 ,WCF允许客户端跨越执行边界与服务通信,如跨应用程序域.进程甚至网络. WCF要求客户端对本地对象还是远程对象都保持一致的编程模型,而不用考虑服务的位置 WCF对本地对象还是远程对象都使用代理…
01 WCF编程概述 SOA的优点 1.服务独立于平台和工作环境.服务并不关心自己所处的环境,也不关心与之进行通信的服务所处的    环境. 2.服务相互隔离. 3.服务对协议.格式和传输中立. 4.服务可以扩展. 5.服务行为不受限制.     实现SOA思想的技术:     1.webService     2.WCF   什么是WCF   MSDN上的定义:          WCF为.NetFramework 提供了一个基础,使其能够编写代码,以在组件.应用程序.系统之间进行通信.WCF…
Spring事务Transaction配置的五种注入方式详解 前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识.通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的.     总结如下:     Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分.    DataSou…