-------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ----------------------
用DataReader对象绑定下拉框:
string sql = "select GradeName from Grade";
SqlConnection con = new SqlConnection(SqlHelper.str);
SqlCommand com = new SqlCommand(sql, con);
try
{
con.Open();
SqlDataReader dr = com.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
string gradeName = dr["GradeName"].ToString();
cboGradeSelect.Items.Add(gradeName);
}
}
dr.Close();
}
catch (Exception ex)
{
string cuowu = ex.ToString();
MessageBox.Show(cuowu, "错误", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
}
finally
{
con.Close();
}
DataReader对象只读取查询一行数据,只读只进,不能往回读取;
DataReader对象可以从数据源中查询只读只进的数据流,每一次从数据源中只读取一条记录,可以提高应用程序的运行性能,减少系统开销。
在使用DataReader对象读取数据的时候不能对数据进行修改,应用程序始终都要保持与数据库的连接;
DataReader对象常用的属性:
HasRows 表示查询是否返回结果,如果有查询结果返回true,否则返回false;
FieldCount 当前行中的列数
DataReader对象常用的方法:
Read();方法:前进到下一行记录,如果都有记录返回true,否则返回false;
Close()方法:关闭DataReader对象
DataReader的创建和使用;
创建一个command对象,调用command对象的ExecuteReader()方法,返回值为DataReader对象
这里使用HasRows属性作为判断条件可以使代码更严谨
Read()方法和循环进行使用,用Read()方法作为循环条件表达式,来对下拉框cboGradeSelect.Items集合进行依次赋值
注意:最后千万不要忘记关闭DataReader对象的连接 dr.Close(); 和数据库的连接 con.Close();