Compartir vía


DataTableReader.GetDataTypeName(Int32) Método

Definición

Obtiene una cadena que representa el tipo de datos de la columna especificada.

public:
 override System::String ^ GetDataTypeName(int ordinal);
public override string GetDataTypeName (int ordinal);
override this.GetDataTypeName : int -> string
Public Overrides Function GetDataTypeName (ordinal As Integer) As String

Parámetros

ordinal
Int32

Índice de la columna de base cero.

Devoluciones

Cadena que representa el tipo de datos de la columna.

Excepciones

El índice que se ha pasado se encontraba fuera del intervalo entre 0 y FieldCount - 1.

Se ha intentado la lectura o el acceso a una columna en un objeto DataTableReader cerrado.

Ejemplos

La siguiente aplicación de consola muestra una lista de campos y sus nombres de tipo de un sencillo DataTable:

private static void TestGetTypeName()
{
    DataTable table = GetCustomers();
    using (DataTableReader reader = new DataTableReader(table))
    {
        for (int i = 0; i < reader.FieldCount; i++)
        {
            Console.WriteLine("{0}: {1}", reader.GetName(i),
                reader.GetDataTypeName(i));
        }
    }
    Console.WriteLine("Press Enter to finish.");
    Console.ReadLine();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();
    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(int));
    table.Columns.Add("Name", typeof(string ));
    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Mary" });
    table.Rows.Add(new object[] { 2, "Andy" });
    table.Rows.Add(new object[] { 3, "Peter" });
    table.Rows.Add(new object[] { 4, "Russ" });
    return table;
}
Private Sub TestGetTypeName()
   Dim table As DataTable = GetCustomers()
   Using reader As New DataTableReader(table)
      For i As Integer = 0 To reader.FieldCount - 1
         Console.WriteLine("{0}: {1}", _
            reader.GetName(i), reader.GetDataTypeName(i))
      Next
   End Using

   Console.WriteLine("Press Enter to finish.")
   Console.ReadLine()
End Sub

Private Function GetCustomers() As DataTable
   ' Create sample Customers table, in order
   ' to demonstrate the behavior of the DataTableReader.
   Dim table As New DataTable

   ' Create two columns, ID and Name.
   Dim idColumn As DataColumn = table.Columns.Add("ID", _
     GetType(Integer))
   table.Columns.Add("Name", GetType(String))

   ' Set the ID column as the primary key column.
   table.PrimaryKey = New DataColumn() {idColumn}

   table.Rows.Add(New Object() {1, "Mary"})
   table.Rows.Add(New Object() {2, "Andy"})
   table.Rows.Add(New Object() {3, "Peter"})
   table.Rows.Add(New Object() {4, "Russ"})
   Return table
End Function

La ventana Consola muestra los siguientes resultados:

ID: Int32  
Name: String  

Comentarios

El GetDataTypeName método siempre devuelve el tipo del subyacente DataColumn en lugar de un tipo específico del proveedor.

Se aplica a