C#中用GridView绑定了数据源为什么查不到数据?
这是我绑定数据源后想通过查询点击事件查询数据的代码
protected void btnserchl_Click(object sender, EventArgs e)
{
string type = ddltype.SelectedItem.Text;
string resultstr = "";
switch (type)
{
case "学号":
resultstr = "select * from tb_score where StudentID like '%" + txtkey.Text.Trim() + "%' and LessonName='" + Session["KCname"].ToString() + "'";
BaseClass.BindDG(gvExaminationresult, "ID", resultstr, "stuInfo");
break;
case "姓名":
resultstr = "select * from tb_score where StudentName like '%" + txtkey.Text.Trim() + "%' and LessonName='" + Session["KCname"].ToString() + "'";
BaseClass.BindDG(gvExaminationresult, "ID", resultstr, "stuInfo");
break;
}
我在公共类文件建立了绑定GridView控件的方法
public static void BindDG(GridView dg, string id, string strSql, string Tname) //建立绑定GridView控件的方法
{
SqlConnection conn = DBCon(); //建立数据库连接
SqlDataAdapter sda = new SqlDataAdapter(strSql, conn);//建立SqlDataAdapter对象,更新SQL语句和数据库连接
DataSet ds = new DataSet();//创建数据集
sda.Fill(ds, Tname);//调用Fill方法填充DataSet
dg.DataSource = ds.Tables[Tname]; //设置绑定数据源
dg.DataKeyNames = new string[] { id };//设置主键
dg.DataBind(); //绑定控件
}
public static void OperateData(string strsql) //建立一个执行SQL语句的方法OperateData
{
SqlConnection conn = DBCon(); //连接数据库
conn.Open(); //打开数据库
SqlCommand cmd = new SqlCommand(strsql, conn);//创建SqlCommand对象
cmd.ExecuteNonQuery();//调用cmd.ExecuteNonQuery方法执行SQL语句
conn.Close(); //关闭连接
}