本文主要是介绍asp.net IBatisNet事务,支持事务嵌套,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
/// <summary>/// IBatis事务,支持事务嵌套
/// </summary>
public class IBatisTransaction
{
static private object _syn = new object();//控制多线程并发
static private Dictionary<Thread, int> _SessionList = new Dictionary<Thread, int>();//保存运行事务的线程,int 表示某一个线程执行多级事务的数量,即:两个方法中都有事务存在
/// <summary>
/// 开始事务
/// </summary>
/// <param name="callObj">调用对象,一般为this</param>
public static void BeginTransaction(object callObj)
{
ISqlMapper daoManager = ServiceConfig.GetInstance().DaoManager;
Thread thread = Thread.CurrentThread;
lock (_syn)
{
if (_SessionList.ContainsKey(thread))//当前线程已经存在事务标识中就不开启第二层事务
这篇关于asp.net IBatisNet事务,支持事务嵌套的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!