你的sql语句从数据库查找多少列,datareader就能读取多少列。 比如有一个这样的表tbl id name sexDataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter("select * from tbl",conn); da.fill(ds,"List"); listbox.DataSource = ds.Tables["List"]; listbox.DataTextField = "name"; listbox.DataValueField = "id"; listbox.DataBind();这样listbox显示的就是字段name的值,value就是id的值。
比如有一个这样的表tbl
id name sexDataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter("select * from tbl",conn);
da.fill(ds,"List");
listbox.DataSource = ds.Tables["List"];
listbox.DataTextField = "name";
listbox.DataValueField = "id";
listbox.DataBind();这样listbox显示的就是字段name的值,value就是id的值。
但是书上讲,使用DataReader将会提高应用程序的性能和减小系统的开销。
我做的是登录界面,从数据库中读出用户名和密码。不需要太复杂的应用。
cmd.Connection.Open();
SqlDataReader dr = cmd.ExecuteReader();
listbox.DataSource = dr;
listbox.DataTextField = "name";
listbox.DataValueField = "id";
listbox.DataBind();