文档章节

使用 CommittableTransaction 执行显式事务

清山博客
 清山博客
发布于 2016/07/15 20:01
字数 109
阅读 0
收藏 0

准备工作

  • 添加 System.Transactions 引用(在解决方案的网站上右键);
  • 引用 System.Transactions 名称空间。

示例讲解

using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Connection String"].ConnectionString))
            {
                using (var ct = new CommittableTransaction())
                {
                    conn.Open();
                    conn.EnlistTransaction(ct);//关联事务
                    using (var cmd = new SqlCommand())
                    {
                        cmd.Connection = conn;
                        cmd.CommandType = CommandType.Text;
                        try
                        {
                            cmd.CommandText = "insert into TranTable(Priority) values(1)";
                            cmd.ExecuteNonQuery();
                            cmd.CommandText = "insert into TranTable(Priority) values(256)";
                            cmd.ExecuteNonQuery();
                            ct.Commit();
                            Response.Write("Ok");
                        }
                        catch (SqlException ex)
                        {
                            ct.Rollback();
                            Response.Write("Error:" + ex.Message);
                        }
                    }
                }
                conn.Close();
            }

参考http://msdn.microsoft.com/zh-cn/library/ms172146(v=vs.90).aspx


本文转载自:http://blog.csdn.net/a497785609/article/details/8852026

共有 人打赏支持
清山博客
粉丝 3
博文 142
码字总数 30397
作品 0
广州
私信 提问
谈谈分布式事务之三: System.Transactions事务详解[上篇]

在.NET 1.x中,我们基本是通过ADO.NET实现对不同数据库访问的事务。.NET 2.0为了带来了全新的事务编程模式,由于所有事务组件或者类型均定义在System.Transactions程序集中的System.Transact...

长平狐
2012/09/04
411
0
像TransactionScope一样使用DbTransaction

System.Transactions.TransactionScope为了提供一种非常方便的实现分布式事务的方式,但是在某些情况下为了阻止本地事务向分布式事务提升,我们只能通过DbTransaction进行事务控制。在进行数...

长平狐
2012/09/04
577
0
谈谈分布式事务(Distributed Transaction)[共5篇]

[第1篇] SOA需要怎样的事务控制方式 在一个基于SOA架构的分布式系统体系中,服务(Service)成为了基本的功能提供单元,无论与业务流程无关的基础功能,还是具体的业务逻辑,均实现在相应的服...

长平狐
2012/09/04
370
1
JDBC中的事务管理------Transaction

数据库的事务就是将任意多个SQL语句看做一个整体,只有这些SQL语句都成功执行,DBMS才会保存这些SQL语句对数据库的修改(事务提交)。否则,数据库将恢复到执行SQL语句之前的状态(事务回滚)...

一别经年
2014/04/23
0
0
Core Animation学习笔记一:CATransactions

CATransaction 事务类,可以对多个layer的属性同时进行修改.它分隐式事务,和显式事务. 区分隐式动画和隐式事务:隐式动画通过隐式事务实现动画 。 区分显式动画和显式事务:显式动画有多种实现...

贺子
2013/07/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Confluence 6 升级中的一些常见问题

升级的时候遇到了问题了吗? 如果你想尝试重新进行升级的话,你需要首先重新恢复老的备份。不要尝试再次对 Confluence 进行升级或者在升级失败后重新启动老的 Confluence。 在升级过程中的一...

honeymoose
今天
2
0
C++随笔(四)Nuget打包

首先把自己编译好的包全部准备到一个文件夹 像这样 接下来新建一个文本文档,后缀名叫.nuspec 填写内容 <?xml version="1.0"?><package xmlns="http://schemas.microsoft.com/packaging/201......

Pulsar-V
今天
2
0
再谈使用开源软件搭建数据分析平台

三年前,我写了这篇博客使用开源软件快速搭建数据分析平台, 当时收到了许多的反馈,有50个点赞和300+的收藏。到现在我还能收到一些关于dataplay2的问题。在过去的三年,开源社区和新技术的发...

naughty
今天
3
0
Python3的日期和时间

python 中处理日期时间数据通常使用datetime和time库 因为这两个库中的一些功能有些重复,所以,首先我们来比较一下这两个库的区别,这可以帮助我们在适当的情况下时候合适的库。 在Python文...

编程老陆
今天
2
0
分布式面试整理

并发和并行 并行是两个任务同时进行,而并发呢,则是一会做一个任务一会又切换做另一个任务。 临界区 临界区用来表示一种公共资源或者说是共享数据,可以被多个线程使用,但是每一次,只能有...

群星纪元
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部