现在是这样的,WCF 服务端,有个DBHelper,每个数据访问层,都直接调用DBHelper.DBConnection访问数据库,这样就照成一个问题,多个客户端一起访问的时候,事务就会混乱. 现在的问题是,一个DBConnection能同时附带多个IDBTransaction吗?

解决方案 »

  1.   


    WcfServer.Method1(){
     DAL.Exec();
    }DAL.Exec(){
      DBHelper.DBConnection.BeginTransaction();
      Insert();
      Delete();
      Update();
      if(result == OK){ DBHelper.DBConnection.Commit(); }
      else { DBHelper.DBConnection.RollBack(); }
    }整体的设计思路是这样的, 但是WcfServer.Method1 存在并发访问, 当一个Transaction还在执行中的时候,又开始了一个Transaction,就会报错. 请问此种情况何解?