ADO.NET最佳实践(中)[12]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 spidertan 的 blog

    }

    console.writeline(e.tostring());

    console.writeline("update failed.");

  }

  myconnection.close();

}

        x.总是关闭connections和datareaders

            在你使用完connection或者datareader对象后,你应该明确地关闭它们。系统中的碎片整理程序只是在最后需要的时候才进行整理,而一些很耗资源的连接还得由你自己来释放。同时如果你不明确地关闭连接,此连接就有可能不返回连接池,除非连接池的max pool size已经达到并且此连接还仍然有效。

            注意:在你的类的finalize方法中不要使用close或者dispose运用到一个connection或者一个datareader或者任何被管理对象上。在一个finalizer中,仅仅释放你的类直接拥有的无法管理的资源。如果你的类不拥有任何无法管理的资源,就不要在你的类使用finalize方法。

        xi.在c#中使用using声明

            在c#中,一个非常便利的保证关闭你使用过的connection和datareader对象的方法是使用using声明。当对象超出了它的使用范围,using声明就会自动地释放该对象。举例:

‘c#

string connstring = "data source=localhost;integrated security=sspi;initial catalog=northwind;";

 

using (sqlconnection conn = new sqlconnection(connstring))

{

  sqlcommand cmd = conn.createcommand();

  cmd.commandtext = "select customerid, companyname from customers";

本文关键:数据库设计
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top