DataTableReader.Item[String] Eigenschaft

Definition

Ruft den Wert der angegebenen Spalte im systemeigenen Format ab.Gets the value of the specified column in its native format.

Überlädt

Item[Int32]

Ruft bei angegebener Spaltenordnungszahl den Wert der angegebenen Spalte im systemeigenen Format ab.Gets the value of the specified column in its native format given the column ordinal.

Item[String]

Ruft bei angegebenem Spaltennamen den Wert der angegebenen Spalte im systemeigenen Format ab.Gets the value of the specified column in its native format given the column name.

Item[Int32]

Ruft bei angegebener Spaltenordnungszahl den Wert der angegebenen Spalte im systemeigenen Format ab.Gets the value of the specified column in its native format given the column ordinal.

public:
 virtual property System::Object ^ default[int] { System::Object ^ get(int ordinal); };
public override object this[int ordinal] { get; }
member this.Item(int) : obj
Default Public Overrides ReadOnly Property Item(ordinal As Integer) As Object

Parameter

ordinal
Int32

Die nullbasierte Ordnungszahl der Spalte.The zero-based column ordinal.

Eigenschaftswert

Der Wert der angegebenen Spalte im systemeigenen Format.The value of the specified column in its native format.

Ausnahmen

Der übergebene Index lag außerhalb des Bereichs von 0 bis FieldCount -1.The index passed was outside the range of 0 to FieldCount - 1.

Beispiele

Im folgenden Beispiel wird der Inhalt aller Spalten in allen Zeilen der angegebenen DataTableReaderangezeigt.The following example displays the contents of all the columns, in all the rows from the supplied DataTableReader. Der Code verwendet die Item[String]-Methode (der Indexer in Microsoft C#), um den Wert abzurufen, der in den einzelnen Spalten enthalten ist.The code uses the Item[String] method (the indexer, in Microsoft C#) to retrieve the value that is contained in each column.

private static void DisplayItems(DataTableReader reader)
{
    int rowNumber = 0;
    while (reader.Read())
    {
        Console.WriteLine("Row " + rowNumber);
        for (int i = 0; i < reader.FieldCount; i++)
        {
            Console.WriteLine("{0}: {1}", reader.GetName(i), reader[i]);
        }
        rowNumber++;
    }
}
Private Sub DisplayItems(ByVal reader As DataTableReader)
   Dim rowNumber As Integer
   While reader.Read()
      Console.WriteLine("Row " & rowNumber)
      For i As Integer = 0 To reader.FieldCount - 1
         Console.WriteLine("{0}: {1}", reader.GetName(i), reader.Item(i))
      Next
      rowNumber += 1
   End While
End Sub

Hinweise

Diese Überladung für Item[String] verhält sich identisch mit der GetValue-Methode.This overload for Item[String] behaves identically to the GetValue method.

Siehe auch

Item[String]

Ruft bei angegebenem Spaltennamen den Wert der angegebenen Spalte im systemeigenen Format ab.Gets the value of the specified column in its native format given the column name.

public:
 virtual property System::Object ^ default[System::String ^] { System::Object ^ get(System::String ^ name); };
public override object this[string name] { get; }
member this.Item(string) : obj
Default Public Overrides ReadOnly Property Item(name As String) As Object

Parameter

name
String

Der Name der Spalte.The name of the column.

Eigenschaftswert

Der Wert der angegebenen Spalte im systemeigenen Format.The value of the specified column in its native format.

Ausnahmen

Der angegebene Name ist kein gültiger Spaltenname.The name specified is not a valid column name.

Es wurde versucht, Daten aus einer gelöschten Zeile abzurufen.An attempt was made to retrieve data from a deleted row.

Es wurde versucht, eine Spalte in einem geschlossenen DataTableReader zu lesen oder darauf zuzugreifen.An attempt was made to read or access a column in a closed DataTableReader.

Beispiele

Wenn ein DataTableReader und ein Spaltenname angegeben sind, gibt die GetValueByName-Prozedur den Wert der angegebenen Spalte zurück.Given a DataTableReader and a column name, the GetValueByName procedure returns the value of the specified column. Bevor Sie diese Prozedur aufrufen, müssen Sie eine neue DataTableReader-Instanz erstellen und die Read-Methode mindestens einmal aufrufen, um den Zeilen Zeiger in einer Daten Zeile zu positionieren.Before calling this procedure, you must create a new DataTableReader instance and call its Read method at least one time to position the row pointer on a row of data.

private static object GetValueByName(
    DataTableReader reader, string columnName)
{
    // Consider when to use a procedure like this one carefully:
    // if  you're going to retrieve information from a column
    // in a loop, it would be better to retrieve the column
    // ordinal once, store the value, and use the methods
    // of the DataTableReader class directly. 
    // Use this string-based indexer sparingly.
    object columnValue = null;

    try
    {
        columnValue = reader[columnName];
    }
    catch (ArgumentException ex)
    {
        // Throw all other errors back out to the caller.
        columnValue = null;
    }
    return columnValue;
}

Private Function GetValueByName( _
   ByVal reader As DataTableReader, _
   ByVal columnName As String) As Object

   ' Consider when to use a procedure like this one carefully:
   ' If you're going to retrieve information from a column
   ' in a loop, it would be better to retrieve the column
   ' ordinal once, store the value, and use the methods
   ' of the DataTableReader class directly. 
   ' Use Item(columnName) sparingly.
   Dim columnValue As Object

   Try
      columnValue = reader.Item(columnName)
   Catch ex As ArgumentException
      ' Throw all other errors back out to the caller.
      columnValue = Nothing
   End Try
   Return columnValue
End Function

Hinweise

Zuerst wird eine Suche mit Unterscheidung nach Groß-/Kleinschreibung ausgeführt.A case-sensitive lookup is performed first. Bei einem Fehler wird eine zweite Suche ohne Beachtung der Groß-/Kleinschreibung durchgeführt.If it fails, a second case-insensitive search is made.

Diese Methode hat keine unempfindliche Breite von Kana.This method is kana-width insensitive.

Diese überladene Version von Item[String] entspricht dem Aufrufen der GetOrdinal-Methode und dem anschließenden Aufrufen der GetValue-Methode.This overloaded version of Item[String] corresponds to calling the GetOrdinal method, and then subsequently calling the GetValue method.

Gilt für: