【发布时间】:2009-12-10 18:22:22
【问题描述】:
我正在从 C# 中的 SQL 数据读取器读取数据并将值从列传递到下拉列表。有两列被读取。使用 IsDbNull,我能够处理空值。但是,正如我现在编写的代码一样,如果 dr.GetString(0) 为空,则根本不会传递任何值,而只要只有 dr.GetString(1)(或两者都不为空),所有的值被传递,空值被忽略。这是我在数据阅读器读取时所拥有的:
while (dr.Read())
{
if (!dr.IsDBNull(0))
{
machineName.Items.Add(dr.GetString(0).ToString());
}
else if (!dr.IsDBNull(1))
{
machineName.Items.Add(dr.GetString(1).ToString());
}
}
我需要做的是让下拉列表填充数据读取器返回的任何值,无论它们位于哪一列。我删除了 using 和 try/catch 语句以整理代码。谢谢大家。
【问题讨论】:
-
很抱歉。阐明了我的代码的意图。
标签: c# sql null if-statement datareader