原来我的代码如下:
private void iband()
{
string str = ConfigurationManager.ConnectionStrings["connstring"].ConnectionString;
SqlConnection conn = new SqlConnection(str);
conn.Open();
SqlDataAdapter sda = new SqlDataAdapter("select * from t1",conn);
DataSet ds = new DataSet();
sda.Fill(ds);
GridView1.DataSource = ds;
GridView1.DataBind();
conn.Close();
}每次都这样好麻烦,能不能用一个类写得简单一点?
我的想法是写一个方法传入一个"select * from t1"这样的字符串,和一个GridView1就可以做到数据的绑定,这样不知道能不能行?
private void iband()
{
string str = ConfigurationManager.ConnectionStrings["connstring"].ConnectionString;
SqlConnection conn = new SqlConnection(str);
conn.Open();
SqlDataAdapter sda = new SqlDataAdapter("select * from t1",conn);
DataSet ds = new DataSet();
sda.Fill(ds);
GridView1.DataSource = ds;
GridView1.DataBind();
conn.Close();
}每次都这样好麻烦,能不能用一个类写得简单一点?
我的想法是写一个方法传入一个"select * from t1"这样的字符串,和一个GridView1就可以做到数据的绑定,这样不知道能不能行?
多牛
写出这个来的真牛啊
好类,好类啊
比如说像我下面这样调用
DataSet ds = SqlHelper.ExecuteDataset(SqlHelper.ConnectionString,CommandType.Text,"select * from all_alluser");
GridView1.DataSource = ds;
GridView1.DataBind();
它怎么关闭连接?
我总结了三种常用的SQLHelper,你可以参考一下。
http://topic.csdn.net/u/20080922/07/2a72cd1a-b4ab-4781-8ba0-55bd836de699.html
你找找吧,每一种都有详细用法。
{
/// 连接数据源
private SqlConnection con = null;
/// <summary>
/// 打开数据库连接.
/// </summary>
private void Open()
{
// 打开数据库连接
if(con == null)
{
ConnectionStringSettings conSS = ConfigurationManager.ConnectionStrings["ldxkxxglxt"];
string conString = conSS.ConnectionString;
con = new SqlConnection(conString);
} if(con.State == ConnectionState.Closed)
{
try
{
///打开数据库连接
con.Open();
}
catch(Exception ex)
{
SQLHelper.CreateErrorMsg(ex.Message);
}
finally
{
///关闭已经打开的数据库连接
}
}
} /// <summary>
/// 关闭数据库连接
/// </summary>
public void Close()
{
///判断连接是否已经创建
if(con != null)
{
///判断连接的状态是否打开
if(con.State == ConnectionState.Open)
{
con.Close();
}
}
}
public void RunSQL(string sqlselect, ref DataSet dataSet)
{
if (dataSet == null)
{
dataSet = new DataSet();
} Open();
///创建SqlDataAdapter
SqlDataAdapter da = new SqlDataAdapter(sqlselect,con);
///读取数据
da.Fill(dataSet);
///关闭数据库的连接
Close();
}
}
{
// Pass through the call providing null for the set of SqlParameters
return ExecuteDataset(connectionString, commandType, commandText, (SqlParameter[])null);
}
我直接就下面这样用有问题吗?
DataSet ds = SqlHelper.ExecuteDataset(SqlHelper.ConnectionString,CommandType.Text,"select * from all_alluser");
GridView1.DataSource = ds;
GridView1.DataBind(); 这样的语句怎么关闭?
DataSet ds = SqlHelper.ExecuteDataset(SqlHelper.ConnectionString,CommandType.Text,"select * from all_alluser");
GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();
如果 Fill 方法发现连接尚未打开,它将隐式地打开 DataAdapter 正在使用的 Connection。
如果 Fill 已打开连接,则它还将在 Fill 完成时关闭连接。
当处理单一操作(如 Fill 或 Update)时,这可以简化您的代码。但是,如果您在执行多项需要打开连接的操作,则可以通过以下方式提高应用程序的性能:
显式调用 Connection 的 Open 方法,对数据源执行操作,然后调用 Connection 的 Close 方法。
应尝试使数据源的连接打开的时间尽可能短,以便释放资源供其他客户端应用程序使用。