DataTableReader.IsDBNull(Int32) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取一个值,该值指示列中是否包含不存在的或缺少的值。
public:
override bool IsDBNull(int ordinal);
public override bool IsDBNull (int ordinal);
override this.IsDBNull : int -> bool
Public Overrides Function IsDBNull (ordinal As Integer) As Boolean
参数
- ordinal
- Int32
从零开始的列序号。
返回
如果指定的列值与 DBNull 等效,则为 true
;否则为 false
。
例外
传递的索引超出了 0 到 FieldCount -1 的范围。
尝试从已删除的行中检索数据。
尝试读取或访问已关闭 DataTableReader 中的列。
示例
以下示例显示传入 DataTableReader的 中编号为 2 的列的内容。 如果特定行中的列的值为 null,则代码将显示文本 <NULL>。 如果列中的数据的类型正确,则本示例显示每行的错误消息。
private static void PrintColumn(DataTableReader reader)
{
// Loop through all the rows in the DataTableReader
while (reader.Read())
{
if (reader.IsDBNull(2))
{
Console.Write("<NULL>");
}
else
{
try
{
Console.Write(reader.GetString(2));
}
catch (InvalidCastException)
{
Console.Write("Invalid data type.");
}
}
Console.WriteLine();
}
}
Private Sub PrintColumn(ByVal reader As DataTableReader)
' Loop through all the rows in the DataTableReader
While reader.Read()
If reader.IsDBNull(2) Then
Console.Write("<NULL>")
Else
Try
Console.Write(reader.GetString(2))
Catch ex As InvalidCastException
Console.Write("Invalid data type.")
End Try
End If
Console.WriteLine()
End While
End Sub
注解
调用此方法以查看在调用类型化 get 方法之前是否存在 null 列值, (例如、GetByteGetChar、 等) 以避免引发错误。
适用于
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈