首先,让我告诉你我得到了什么错误。
'DDLTesttoAppear'的
SelectedIndex
因此而无效 在项目列表中不存在。参数名称:值
我的项目中有很多枚举,这两个枚举与这个问题有关。 这两个枚举
public enum Gender
{
NA = 0, Male = 1, Female = 2
}
和
public enum NumberOfAdmissionTest
{
NA = 0, First = 1, Second = 2, Third = 3, Fourth =4
}
在UI页面中,我有两个DDl,就像
DDLGender.DataSource = Enum.GetNames(typeof(Gender));
DDLGender.DataBind();
DDLTestApearnce.DataSource = Enum.GetNames(typeof(NumberOfAdmissionTest));
DDLTestApearnce.DataBind();
此字段可以作为null插入到数据库中。因此,在返回记录时我使用的是空值处理函数 其中要执行的代码行是
candidateEntity.CandidateGender = nullHandler.GetInt32(CANDIDATE_GENDER);
candidateEntity.TestToAppear = nullHandler.GetInt32(TEST_TO_APPEAR);
public int GetInt32(String sFieldName)
{
return (_reader[sFieldName] == DBNull.Value) ? 0 : _reader.GetInt32(_reader.GetOrdinal(sFieldName));
}
检索记录后,我将其与两个ddls绑定,如
DDLGender.SelectedIndex = candidateEntity.CandidateGender;
DDLTesttoAppear.SelectedIndex = candidateEntity.TestToAppear;
现在,无论你说什么,有趣或令人困惑的是,这个问题的一部分是,对于性别而言,它不会产生任何错误,但对于测试外观,它会产生错误。
答案 0 :(得分:1)
您在样本中绑定DDLTestApearnce
,但在DDLTesttoAppear
上收到错误(并设置了所选值)。