Net Framework 2.0 事务处理

简介:
处理事务是构建许多业务逻辑的一个重要方面。
.NET Framework 2.0 中的事务
 .NET Framework 2.0包含 System.Transactions,这是一种新的命名空间,完全专注于控制事务性行为。开发人员将最常将 System.Transactions 与某个“执行上下文”配合使用,这是 .NET Framework 2.0 中的一种新结构。执行上下文允许指定适用于包含在一个定义范围内的所有代码的通用信息,如事务。以下是应用程序如何使用该方法将一组操作组合成一个事务的示例:
				
						
				
		
				
						
				
				
						
				
				
						
				
				
						
				
				
						
				
		
位于 using 块内的所有操作将成为一个事务的一部分,因为它们共享其所定义的事务执行上下文。本例中的最后一行,调用 TransactionScope 的 Complete 方法,将导致退出该块时请求提交该事务。此方法还提供了内置的错误处理,出现异常时会终止事务。
如本例那样,为新 TransactionScope 指定 Required,意味着此代码将总是作为事务的一部分运行:若其调用方的事务存在,则加入之;若不存在,则创建一个新的。如同在企业服务中一样,还可以指定其他选项,包括 RequiresNew、Supported 和 NotSupported。
与企业服务及其前任 MTS 和 COM+ 不同,Systems.Transactions 完全专注于控制事务性行为。例如,事务与对象的内部状态之间不需要存在连接。企业服务要求一个对象在其结束事务时被停用,但 Systems.Transactions 则没有这种需要。
ADO.NET 2.0中的SqlClient提供程序与新的System.Transactions命名空间相集成,从而启用了称为可升级事务的行为。尽管Transact SQL可以用来启动本地或分布式事务(BEGIN TRANSACTION和BEGIN DISTRIBUTED TRANSACTION),但在某些情况下(特别是在客户端/中间层编程方面),程序员可能希望编写可以在一个数据库方案或多个数据库方案中使用的组件。这些方案可能包含多个SQL Server实例,并且SQL Server可以自动检测到多实例访问并将事务从本地“提升”到多实例(分布式)。即使在使用多个数据库产品或多个连接的情况下,这也是可能的,前提是第一个数据库(在分布式事务术语中称为资源管理器)是SQL Server。在ADO.NET中,默认情况下启用可升级的事务。
相关资料:





本文转自 张善友 51CTO博客,原文链接:http://blog.51cto.com/shanyou/75123,如需转载请自行联系原作者
目录
相关文章
|
8月前
|
关系型数据库 MySQL 数据库
找不到请求的 .Net Framework Data Provider。可能没有安装
做的一个项目,框架为.net framework 数据库为mysql 出现如标题错误 检查是否安装mysql、是否安装mysql connector net 笔者是因为没有安装后者mysql connector net 下载地址: [mysql connector net](https://downloads.mysql.com/archives/c-net/ "mysql connector net") 笔者安装截图如下: ![请在此添加图片描述](https://developer-private-1258344699.cos.ap-guangzhou.myqcloud.com/c
88 0
|
12天前
|
开发工具 开发者
Jetbrains Rider:缺少.NET Framework 4.5.2
该文主要针对开发者,指出需下载SDK而非Runtime以进行应用程序开发。当使用Rider打开旧项目出现错误提示缺少.NET Framework 4.5.2时,需从微软官网下载相应版本的SDK(推荐开发版)。安装完成后,可能需要重启Rider以消除波浪线提示。对于.NET Core项目,若提示CLI路径未找到,同样需前往微软官网下载缺失的SDK版本,如.NET Core 3.1。安装完毕后,可考虑配置环境变量。
14 0
|
8月前
|
C# Windows
[记录]c#.net framework 4.5调用运行时库
[记录]c#.net framework 4.5调用运行时库
|
1月前
|
开发框架 .NET C#
探索VB.NET:了解.NET Framework下的Visual Basic
【4月更文挑战第27天】Visual Basic进化为VB.NET,融入.NET Framework,提供面向对象编程、泛型、LINQ等特性。VB.NET是强类型语言,支持类型推断,通过Windows Forms和WPF构建桌面应用。广泛应用于企业级、Web和数据处理开发,是易学且功能强大的编程工具。随着.NET版本更新,VB.NET的应用仍具价值,适合初学者和资深开发者。
|
1月前
|
数据挖掘 定位技术
.NET Compact Framework下的GPS NMEA data数据分析(二)转
.NET Compact Framework下的GPS NMEA data数据分析(二)转
18 0
|
1月前
|
SQL Windows
保姆级:Windows Server 2012上安装.NET Framework 3.5
保姆级:Windows Server 2012上安装.NET Framework 3.5
|
8月前
|
Windows
​史上最详细的Windows10系统离线安装.NET Framework 3.5的方法(附离线安装包下载)
​史上最详细的Windows10系统离线安装.NET Framework 3.5的方法(附离线安装包下载)
815 0
|
1月前
|
Windows
windows server 2019 安装NET Framework 3.5失败,提示:“安装一个或多个角色、角色服务或功能失败” 解决方案
windows server 2019 安装NET Framework 3.5失败,提示:“安装一个或多个角色、角色服务或功能失败” 解决方案
427 0
|
1月前
|
C# Windows
C#安装“Windows 窗体应用(.NET Framework)”
C#安装“Windows 窗体应用(.NET Framework)”
76 0
|
9月前
|
开发框架 .NET 编译器
C#OOP之十四 .Net Framework简介
C#OOP之十四 .Net Framework简介
64 0