• C#事务相关


    之前在程序中用到事务时,都是在存储过程中创建事务来对数据进行控制,其实在C#中也有事务类。

    1、DbTransaction类对数据库访问添加事务,它是对数据库事务操作的基类,继承此类的有:
        System.Object
        System.MarshalByRefObject
             System.Data.Common.DbTransaction
              System.Data.EntityClient.EntityTransaction
              System.Data.Odbc.OdbcTransaction
              System.Data.OleDb.OleDbTransaction
              System.Data.OracleClient.OracleTransaction
              System.Data.SqlClient.SqlTransaction

    2、System.Transactions命名空间下有两个类也可以用来事务的操作
      分别是 TransactionScopeCommittableTransaction(继承自System.Transactions.Transaction)

         在使用 System.Transactions 所提供的类开发事务应用程序时,不必考虑需要使用哪种事务,也不必考虑所涉及的事务管理器。 System.Transactions 基础结构会自动管理这些事宜。

         System.Transactions 命名空间中的类所提供的基础结构通过支持在 SQL Server、ADO.NET、消息队列 (MSMQ) 和 Microsoft 分布式事务协调器 (MSDTC) 中启动的事务,使事务编程变得简单和高效。System.Transactions 命名空间提供基于 Transaction 类的显式编程模型和使用 TransactionScope 类的隐式编程模型,在后一种模型中,事务由该基础结构自动管理。

    创建事务

    System.Transactions 命名空间提供了两种用于创建事务的模型。下列主题对这两种模型进行了介绍。

    使用事务范围实现隐式事务

    描述 System.Transactions 命名空间如何支持使用 TransactionScope 类创建隐式事务。

    使用 CommittableTransaction 执行显式事务

    描述 System.Transactions 命名空间如何支持使用 CommittableTransaction 类创建显式事务。

    TransactionScope是.Net Framework 2.0滞后,新增了一个名称空间。它的用途是为数据库访问提供了一个“轻量级”[区别于:SqlTransaction]的事物。使用之前必须添加对 System.Transactions.dll 的引用。

    TransactionScope 类提供了一种简单方法,无需与事务自身进行交互,就可以在参与事务时对代码块进行标记。事务范围可以自动选择和管理环境事务。由于 TransactionScope 具有简单易用性和高效性,因此在开发事务应用程序时优先使用该类。

    http://msdn.microsoft.com/zh-cn/library/system.transactions.transaction.aspx

    http://msdn.microsoft.com/zh-cn/library/ms229973.aspx

    http://msdn.microsoft.com/zh-cn/library/ms172152.aspx

    http://www.cnblogs.com/jillzhang/archive/2008/02/20/1075057.html

  • 相关阅读:
    CentOS7安装node环境
    【异常】update更新java.sql.SQLException: Duplicate entry '2019-07-30 00:00:00-110100' for key
    MySQL查询多行重复数据SQL
    Phoenix批量提交优化,官网的demo
    (转) 读懂IL
    Docker
    Docker
    Rest之路
    (转)Docker
    Docker
  • 原文地址:https://www.cnblogs.com/wupeiqi/p/3357531.html
Copyright © 2020-2023  润新知