DataTableReader.GetGuid(Int32) 方法

定义

以全局唯一标识符 (GUID) 的形式获取指定列的值。

public:
 override Guid GetGuid(int ordinal);
public override Guid GetGuid (int ordinal);
override this.GetGuid : int -> Guid
Public Overrides Function GetGuid (ordinal As Integer) As Guid

参数

ordinal
Int32

从零开始的列序号。

返回

指定列的值。

例外

传递的索引超出了 0 到 FieldCount -1 的范围。

尝试从已删除的行中检索数据。

尝试读取或访问已关闭的 DataTableReader 中的列。

指定的列不包含 GUID。

示例

以下示例显示传入的 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.GetGuid(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.GetGuid(2))
         Catch ex As InvalidCastException
            Console.Write("Invalid data type.")
         End Try
      End If
      Console.WriteLine()
   End While
End Sub

注解

不执行任何转换;因此,检索到的数据必须已是 Guid 或可强制转换为 Guid

调用 IsDBNull 以查看在调用此方法之前是否存在 null 值。

适用于