我想让页面加载时让DropDownList获取数据库中设定的值,比如男的,DropDownList的选择列表值为0,得到男,反之为女,可是我写的程序在 reader.GetBoolean(3)这里好象没有很好的工作!? OleDbConnection conn = null;
OleDbDataReader reader = null;
conn = new OleDbConnection( "Provider=Microsoft.Jet.OLEDB.4.0; " +
"Data Source=" + Server.MapPath("Pets/db.mdb"));conn.Open();//以OLEDB打开数据库
OleDbCommand cmd = new OleDbCommand("Select * FROM PetTable order by ID DESC", conn);
reader = cmd.ExecuteReader();
datagrid.DataSource = reader;
datagrid.DataBind();
reader.Read();
foreach(DataGridItem dgi in datagrid.Items)
{
if( reader.GetBoolean(3)) //这里??有问题?
((DropDownList)dgi.FindControl("UnBind")).SelectedIndex=0;
else
((DropDownList)dgi.FindControl("UnBind")).SelectedIndex=1;
}
请解决!我初学!
OleDbDataReader reader = null;
conn = new OleDbConnection( "Provider=Microsoft.Jet.OLEDB.4.0; " +
"Data Source=" + Server.MapPath("Pets/db.mdb"));conn.Open();//以OLEDB打开数据库
OleDbCommand cmd = new OleDbCommand("Select * FROM PetTable order by ID DESC", conn);
reader = cmd.ExecuteReader();
datagrid.DataSource = reader;
datagrid.DataBind();
reader.Read();
foreach(DataGridItem dgi in datagrid.Items)
{
if( reader.GetBoolean(3)) //这里??有问题?
((DropDownList)dgi.FindControl("UnBind")).SelectedIndex=0;
else
((DropDownList)dgi.FindControl("UnBind")).SelectedIndex=1;
}
请解决!我初学!
用Convert.ToBool(reader[3].ToString())试一试
还有 reader.read();做了些什么?不要他好象还是那样反映的!
foreach(DataGridItem dgi in datagrid.Items)
{
if( reader.GetString(3) == "0")
((DropDownList)dgi.FindControl("UnBind")).SelectedIndex=0;
else
((DropDownList)dgi.FindControl("UnBind")).SelectedIndex=1;
}
if("0".equals(object)) 这样写不成吗?