DataTableReader.GetDataTypeName(Int32) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
Ordinal de columna de base cero.
Devoluciones
Cadena que representa el tipo de datos de la columna.
Excepciones
El índice pasado estaba fuera del intervalo de 0 a FieldCount - 1.
Se intentó leer o tener acceso a una columna en un objeto cerrado DataTableReader.
Ejemplos
En la siguiente aplicación de consola se 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
En la ventana Consola se muestran 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.