IDataRecord.GetOrdinal(String) Yöntem

Tanım

Adlandırılmış alanın dizinini döndürür.

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

Parametreler

name
String

Bulunacak alanın adı.

Döndürülenler

Adlandırılmış alanın dizini.

Örnekler

Aşağıdaki örnekte devralınan GetOrdinal yöntemin nasıl kullanılacağı gösterilmektedir.

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

Açıklamalar

GetOrdinal önce büyük/küçük harfe duyarlı bir arama gerçekleştirir. Başarısız olursa ikinci bir büyük/küçük harfe duyarsız arama yapılır. GetOrdinal kana-width duyarsızdır. Adlandırılmış alanın dizini bulunamazsa, bir IndexOutOfRangeException oluşturulur.

Sıra tabanlı aramalar adlandırılmış aramalardan daha verimli olduğundan, döngü içinde çağrı GetOrdinal yapmak verimsizdir. Bir kez çağırıp GetOrdinal sonuçları döngü içinde kullanmak üzere bir tamsayı değişkenine atayarak zaman kazanın.

Şunlara uygulanır