我有一个返回类对象的列表。对于下拉列表数据绑定目的,我需要从以前的列表创建字符串列表。我的主要要求是我需要从数据库中获取两个字段(datavalue,datatext)到下拉列表。有人可以帮我这么做吗
class RoleData
{
public string id { get; set; }
public string value { get; set; }
}
private List<RoleData> EmpRoleDataBind(){
List<RoleData> RoleList = new List<RoleData>();
if (conn.State.ToString() == "Closed")
{
conn.Open();
}
string query = "select emp_role_id,description from emp_role";
MySqlCommand cmd = new MySqlCommand(query,conn);
MySqlDataReader msdr = cmd.ExecuteReader();
while (msdr.Read())
{
RoleList.Add(
new RoleData()
{
id = Convert.ToString(msdr["emp_role_id"]),
value = Convert.ToString(msdr["description"])
}
);
}
msdr.Close();
conn.Close();
return RoleList;
}
答案 0 :(得分:0)
您可以将DropDownList
绑定到列表,并将类属性名称分配给DropDownList
属性DataValueField
和DataTextField
dropdownlist1.DataSource = EmpRoleDataBind();
dropdownlist1.DataValueField = "id";
dropdownlist1.DataTextField = "value";
dropdownlist1.DataBind();
作为附加说明
EmpRoleDataBind
返回 Employee-Role 记录的列表时,我将其命名为GetEmpRoleData
而不是EmpRoleDataBind
,因为它不绑定DropDownList
1}}。