DataTableReader.GetDataTypeName(Int32) Méthode

Définition

Obtient une chaîne représentant le type de données de la colonne spécifiée.

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

Paramètres

ordinal
Int32

Ordinal de colonne de base zéro.

Retours

Chaîne représentant le type de données de la colonne.

Exceptions

L’index passé était en dehors de la plage de 0 à FieldCount 1.

Une tentative a été effectuée pour lire ou accéder à une colonne dans une colonne fermée DataTableReader.

Exemples

L’application console suivante affiche une liste de champs et leurs noms de types à partir d’un simple 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 fenêtre console affiche les résultats suivants :

ID: Int32
Name: String

Remarques

La GetDataTypeName méthode retourne toujours le type du sous-jacent DataColumn au lieu d’un type spécifique au fournisseur.

S’applique à