比如:
  如果是一个Web Application,我会将数据库连接保存到Session中以便于多个页面调用同一个数据库连接(当然这种情况不太可能发生:>)。

解决方案 »

  1.   

    多个连接完成一个事物不是没有,利用MS DTC不过他的初衷是在异种数据库间保持事务一致性!
      

  2.   

    IceSheet() 你把连接保存在session中,那么人多了你的DataBase server还不疯了?
      

  3.   

    在不同的类里没有关系,将事物作为参数传递就行了。public void CommitA(SqlTransaction aTrans) {
      aTrans中具有Connection,这里进行操作没有什么错误
    }
      

  4.   

    我期望的目标就是不要将数据库连接当做参数传来传去的。以前没有考虑数据库事务时,我是将所有对数据库的操作都封装在同一个类里的,现在我不希望做太大的修改。
      我对C#还不是很熟,要是可以实现象Session这样的全局对象就好了!
      

  5.   

    大哥,你说的问题确实需要使用session来解决,但是你也不要吓设问题呀!
    事务处理是指这个吗?
      

  6.   

    TO:bearbaba(儿子笨苯)
       我好象一直在问的是数据库事务哦!?
       如果可以直接用session来做,我还问干什么?注意问题:
       遇到的问题是:有些情况下,某一个用户操作涉及到对多个数据库表的操作,而且这些操作是分别封装在不同的类里的,我应该如何实现数据库事务处理呢?
       如果我没说清楚,我说得再清楚一些:我说的封装是指在业务逻辑层封装.
       在类里可以直接调用Session对象吗?如果还是要传引用的话,那我还不如直接传SqlTransaction对象的引用呢!
      

  7.   

    可能你的操作涉及到组件间得调用,如果这样的话,可以重新考虑一下设计结构,尽量让某一类的操作集中在一个组件当中。
    如果非要象你说的那样的话,哈哈,还没有想到怎么去做,我现在虽然也是用
    c#+asp.net+com+写,不过还没有碰到
    比如一个采购管理模块,我就只用一个类库来处理所有的采购方面的业务逻辑
    销售管理模块,再用另外一个类库来处理。