嗨我在表格中有空值,我将用它来填充组合框。我不知道该怎么做。当我运行以下代码时,我得到错误:数据是空的。无法在空值上调用此方法或属性。
private void code()
{
sc.Close();
try
{
sc.Open();
string Query = "SELECT * from CodeTable";
SqlCommand createCommand = new SqlCommand(Query, sc);
SqlDataReader dr = createCommand.ExecuteReader();
while (dr.Read())
{
String code = dr.GetString(1);
if (!cbDevices.Items.Contains(code))
{
cbDevices.Items.Add(code);
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
答案 0 :(得分:2)
您可以使用IsDbNull过滤掉null。
if (!dr.IsDbNull(1))
{
String code = dr.GetString(1);
if cbDevices.Items.Contains(code))
{
cbDevices.Items.Add(code);
}
}
答案 1 :(得分:0)
最简单的方法就是在SQL中过滤掉它们:
"SELECT * from CodeTable WHERE code IS NOT NULL"
我假设根据您的示例,字段名称为code
,但您可以进行适当的调整。