【发布时间】:2011-12-07 23:25:52
【问题描述】:
在添加页面中,我有一个下拉列表,其中包含两个列表项 M 和 F。我还有一个存储下拉列表值的表。在编辑页面中,我有相同的下拉列表和相同的列表项,我希望根据存储在 sql 表中的值选择下拉列表(列表项)的值。 使用下面的代码我得到这个错误:System.NullReferenceException: Object reference not set to an instance of an object.
.aspx 代码
<asp:DropDownList ID="DriverGender" runat="server">
<asp:ListItem >M</asp:ListItem>
<asp:ListItem >F</asp:ListItem>
</asp:DropDownList>
.aspx.cs 代码
String SqlSelectDriverDetails = "SELECT * FROM driver WHERE driverID = @IdFromUrl";
//Create SqlCommand object
SqlCommand SqlComm = new SqlCommand(SqlSelectDriverDetails, DBConn);
//Passing parameters to the sql query
SqlComm.Parameters.Add("@IdFromUrl", SqlDbType.Int).Value = ID;
//Creating DataReader object
SqlDataReader DataReaderObj;
DataReaderObj = SqlComm.ExecuteReader();
//if the resultant is not empty
while (DataReaderObj.Read())
{
string gender = (String)DataReaderObj["gender"];
DriverGender.Items.FindByValue((String)DataReaderObj["gender"]).Selected = true;
}
【问题讨论】: