这里引用了sqlhelper类的案例
这里用的是析构函数 开调用 Dispose()方法来释放内存
public class DataBase
{
//私有变量,数据库连接
protected SqlConnection Connection;
protected string ConnectionString;
public DataBase()
{
ConnectionString = "Data Source=(local);DataBase=**;User ID=sa;Password=**;";
}
private void Open()
{ //判断数据库连接是否存在
if (Connection == null)
{
//不存在,新建并打开
Connection = new SqlConnection(ConnectionString);
Connection.Open();
}
else
{
//存在,判断是否处于关闭状态
if (Connection.State.Equals(ConnectionState.Closed))
Connection.Open(); //连接处于关闭状态,重新打开
}
}
//公有方法,关闭数据库连接
public void Close()
{
if (Connection.State.Equals(ConnectionState.Open))
{
Connection.Close();
//连接处于打开状态,关闭连接
}
}
/// <summary>
/// 析构函数,释放非托管资源
/// </summary>
~DataBase()
{
try
{
if (Connection != null)
Connection.Close();
}
catch{}
try
{
Dispose();
}
catch{}
}
//公有方法,释放资源
public void Dispose()
{
if (Connection != null)
// 确保连接被关闭
{
Connection.Dispose();
Connection = null;
}
}