IDataRecord.GetOrdinal(String) Méthode

Définition

Retourne l’index du champ nommé.

public:
 int GetOrdinal(System::String ^ name);
public int GetOrdinal (string name);
abstract member GetOrdinal : string -> int
Public Function GetOrdinal (name As String) As Integer

Paramètres

name
String

Le nom du champ à trouver.

Retours

L’index du champ nommé.

Exemples

L’exemple suivant montre comment utiliser la méthode héritée GetOrdinal .

public static void ReadData(string connectionString)
{
    string queryString = "SELECT DISTINCT CustomerID FROM Orders";

    using (OdbcConnection connection = new OdbcConnection(connectionString))
    {
        OdbcCommand command = new OdbcCommand(queryString, connection);

        connection.Open();
        OdbcDataReader reader = command.ExecuteReader();

        int customerID = reader.GetOrdinal("CustomerID");

        while (reader.Read())
        {
            Console.WriteLine("CustomerID={0}", reader.GetString(customerID));
        }

        // Call Close when done reading.
        reader.Close();
    }
}
Public Sub ReadData(ByVal connectionString As String)
    Dim queryString As String = "SELECT DISTINCT CustomerID FROM Orders"

    Using connection As New OdbcConnection(connectionString)
        Dim command As New OdbcCommand(queryString, connection)

        connection.Open()

        Dim reader As OdbcDataReader = command.ExecuteReader()

        Dim customerID As Integer = reader.GetOrdinal("CustomerID")

        While reader.Read()
            Console.WriteLine("CustomerID={0}", reader.GetString(customerID))
        End While

        ' Call Close when done reading.
        reader.Close()
    End Using
End Sub

Remarques

GetOrdinal effectue d’abord une recherche respectant la casse. En cas d’échec, une deuxième recherche ne respectant pas la casse est effectuée. GetOrdinal ne respecte pas la largeur du jeu de caractères kana. Si l’index du champ nommé est introuvable, un IndexOutOfRangeException est levée.

Étant donné que les recherches basées sur un ordinal sont plus efficaces que les recherches basées sur un nom, il est inefficace d'appeler GetOrdinal dans une boucle. Gagnez du temps en appelant GetOrdinal une seule fois et en affectant les résultats à une variable entière à utiliser dans la boucle.

S’applique à