描述:一个页面需要调用 20 次以下函数ABC()

    SqlConnection myConnection ....
    myConnection.Open();
    ...
    myConnection.Close();  // 问题:这个关闭链接放在函数中合理,还是放在页面的结尾合理呢
}我的想法是这个频繁打开、关闭数据库链接,会不会有什么不利影响呢?

解决方案 »

  1.   

    用using(  SqlConnection myConnection =new 。。)
    {
    }
      

  2.   

    数据库操作类
    using(SqlConnection myConnection=new SqlConnection(""))
    {
    }  
      

  3.   

    放在函数中,用完立即关闭时最好的。
    或者是using(SqlConnection myConnection=new SqlConnection(“”){}
    就不要手动关闭连接了
      

  4.   

    推荐用 using  手动关闭有可能忘了
      

  5.   

    昨天开了这方面的一篇文章。using(SqlConnection myConnection=new SqlConnection(“”){} 
    就不用手动关闭连接那using(sqlcommand cmd=new sqlcommand())这个用完了。是不是也不用手动释放占用的资源啊。
      

  6.   

    using(SqlConnection con=new SqlConnection(connectionStr))
    {....}
    这样写就OK,不用管了
      

  7.   

    不过你这个函数可以优化一下,将数据库连接作为引用参数(也就是加ref),这样就不用在函数里开关了。
      

  8.   

    使用using 就好了 就自动释放资源,就算执行当中出错了,也会释放资源,using 其实 就是try finally
      

  9.   

    好像没有本质上解决楼主的问题吧?自动和手动有本质的区别吗?关键还是对楼主的abc函数进行优化。
      

  10.   

    using(  SqlConnection myConnection =new GetSqlConnection() )
    {
    }用using只要你跳出这个里面,他自动会帮你解决连接关闭问题。
      

  11.   

    在函数里关闭比较好, 也比较安全, 一般都用完就马上关闭. 频繁打开、关闭数据库链接不会有什么影响的, .NET Framework 环境提供了强大的垃圾回收机制, 我们不需要过多关注这些.