我们还可以采用一种更加简便的方 法来实现上述程序的功能。这就是将SqlConnection对象包含到using区块中,这样程序会自动调用Dispose()方法释放 SqlConnection对象所占用的系统资源,无需再使用SqlConnection对象的Close()方法。
范例程序代码如下:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string connectionString = "server=localhost;database=Northwind;
integrated security=SSPI";
SqlConnection mySqlConnection = new SqlConnection(connectionString);
using (mySqlConnection)
{
mySqlConnection.Open();
lblInfo.Text = "<b>mySqlConnection对象的ConnectionString属性为:<b>" +
mySqlConnection.ConnectionString + "<br>";
lblInfo.Text += "<b>mySqlConnection对象的ConnectionTimeout属性为<b>" +
mySqlConnection.ConnectionTimeout + "<br>";
lblInfo.Text += "<b>mySqlConnection对象的Database属性为<b>" +
mySqlConnection.Database + "<br>";
lblInfo.Text += "<b>mySqlConnection对象的DataSource属性为<b>" +
mySqlConnection.DataSource + "<br>";
lblInfo.Text += "<b>mySqlConnection对象的PacketSize属性为<b>" +
mySqlConnection.PacketSize + "<br>";
lblInfo.Text += "<b>mySqlConnection对象的ServerVersion属性为<b>" +
mySqlConnection.ServerVersion + "<br>";
lblInfo.Text += "<b>mySqlConnection对象的当前状态为<b>"+
mySqlConnection.State + "<br>";
}
lblInfo.Text += "<br><b>关闭连接后的mySqlConnection对象的状态为:</b>";
lblInfo.Text += mySqlConnection.State.ToString();
}
}
程序代码说明:在上述范例的程序代码中,采用using(mySqlConnection)的形式使得代码更加简洁,并且其最大的优点就是无需编写finally区块代码,可以自动关闭与数据库的连接