现在我希望取出dataset 后,就把连接 conn 关闭并且释放了,该怎么改呢 , sqlhelper 这个类在app code 这个文件夹里
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
/// <summary>
/// SqlHelper 的摘要说明
/// </summary>
public class SqlHelper
{
private static readonly string strConn = ConfigurationManager.ConnectionStrings["ConnectionStringa"].ConnectionString;
// private static readonly string strName = ConfigurationManager.AppSettings["userName"].ToString();
// private static readonly string strPass = ConfigurationManager.AppSettings["userPass"].ToString();
public SqlHelper()
{
//
// TODO: 在此处添加构造函数逻辑
//
}public static DataSet ExcuteReadApdater(string nText, CommandType nType, SqlParameter[] paras)
{SqlConnection con = new SqlConnection(strConn);
SqlCommand cmd = new SqlCommand();
DataSet ds = new DataSet();
try
{
PrepareCommand(con, cmd, null, nType, nText, paras);
SqlDataAdapter sqlAdapter = new SqlDataAdapter(cmd);
sqlAdapter.Fill(ds);
cmd.Parameters.Clear();
return ds;}
catch (SqlException ex)
{throw new Exception(ex.Message, ex);}
}
public static void PrepareCommand(SqlConnection con, SqlCommand cmd, SqlTransaction trans, CommandType nType, string nText, SqlParameter[] paras)
{if (con.State != ConnectionState.Open)
con.Open();
cmd.Connection = con;
cmd.CommandText = nText;
if (trans != null)
{cmd.Transaction = trans;
}
cmd.CommandType = nType;
if (paras != null)
{foreach (SqlParameter para in paras)
{cmd.Parameters.Add(para);
}}
}}
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
/// <summary>
/// SqlHelper 的摘要说明
/// </summary>
public class SqlHelper
{
private static readonly string strConn = ConfigurationManager.ConnectionStrings["ConnectionStringa"].ConnectionString;
// private static readonly string strName = ConfigurationManager.AppSettings["userName"].ToString();
// private static readonly string strPass = ConfigurationManager.AppSettings["userPass"].ToString();
public SqlHelper()
{
//
// TODO: 在此处添加构造函数逻辑
//
}public static DataSet ExcuteReadApdater(string nText, CommandType nType, SqlParameter[] paras)
{SqlConnection con = new SqlConnection(strConn);
SqlCommand cmd = new SqlCommand();
DataSet ds = new DataSet();
try
{
PrepareCommand(con, cmd, null, nType, nText, paras);
SqlDataAdapter sqlAdapter = new SqlDataAdapter(cmd);
sqlAdapter.Fill(ds);
cmd.Parameters.Clear();
return ds;}
catch (SqlException ex)
{throw new Exception(ex.Message, ex);}
}
public static void PrepareCommand(SqlConnection con, SqlCommand cmd, SqlTransaction trans, CommandType nType, string nText, SqlParameter[] paras)
{if (con.State != ConnectionState.Open)
con.Open();
cmd.Connection = con;
cmd.CommandText = nText;
if (trans != null)
{cmd.Transaction = trans;
}
cmd.CommandType = nType;
if (paras != null)
{foreach (SqlParameter para in paras)
{cmd.Parameters.Add(para);
}}
}}
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
namespace Home.Dal
{
public static class DBHelper
{ private static string conStr = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString;
public static int ExecuteCommand(string sql, params SqlParameter[] values)
{
SqlConnection conn = new SqlConnection(conStr);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
if (values != null)
{
cmd.Parameters.AddRange(values);
}
int result = cmd.ExecuteNonQuery();
return result;
}
public static Object GetScalar(string sql, params SqlParameter[] values)
{
SqlConnection conn = new SqlConnection(conStr);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
if (values != null)
{
cmd.Parameters.AddRange(values);
}
object result = cmd.ExecuteScalar();
conn.Close();
return result;
}
public static SqlDataReader GetReader(string sql, params SqlParameter[] values)
{
SqlConnection conn = new SqlConnection(conStr);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
if (values != null)
{
cmd.Parameters.AddRange(values);
}
SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return reader;
}
public static DataTable GetDataSet(string sql, params SqlParameter[] values)
{
SqlConnection conn = new SqlConnection(conStr);
DataSet ds = new DataSet();
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
if (values != null)
{
cmd.Parameters.AddRange(values);
}
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
conn.Close();
conn.Dispose();
return ds.Tables[0]; } }
}