.net中事务的使用
事务简单来讲就是一组事情的集合,只有把这一组内的所有事情全部做完才能说完成了这个事务,如果在执行任意一件事情的过程中出现意外,则以前所做过的事情均恢复原样,就跟从来没发生过这件事一样。在编程中事务应用的非常广泛,而且在某些业务上必须要使用事务以应对可能出现的风险。一个典型的例子就是大家所熟悉的银行转账功能,转账简单来讲分为两步,第一步是从一个账户上减去需要转账的金额数目,第二步是向另外一个账户上增加转账金额。只有减去金额和增加金额都完成了我们才说这一事务执行完毕。我们可以想象如果没有加事务处理,当转账过程中只有第一步完成了,但是第二步没有完成便出现了意外这会是一件多么可怕的事情。既然事务这么重要,那事务具体怎样使用呢?下面亮出源码供大家参考:
public class DBTransaction { //定义一个SqlHelper私有变量 private SqlHelper SqlHelper = null; //当实例化该类的时候同时实例化一个Sqlhelper对象 public DBTransaction() { SqlHelper = new SqlHelper(); } /// <summary> /// 获取数据库连接 /// </summary> /// <returns></returns> public SqlConnection GetConnection() { return SqlHelper.GetCon(); } /// <summary> /// 获取事务 /// </summary> /// <returns></returns> public SqlTransaction GetTransaction(SqlConnection conn) { return conn.BeginTransaction(); } /// <summary> /// 提交事务 /// </summary> public void Commit(SqlTransaction sqlTransaction) { sqlTransaction.Commit(); } /// <summary> /// 回滚事务 /// </summary> public void Rollback(SqlTransaction sqlTransaction) { sqlTransaction.Rollback(); } /// <summary> /// 关闭连接 /// </summary> public void Close(SqlConnection conn) { if (conn.State == ConnectionState.Open) { conn.Close(); } } }