DataTableReader.Item[String] DataTableReader.Item[String] DataTableReader.Item[String] DataTableReader.Item[String] Property

Определение

Перегрузки

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

Возвращает значение указанного столбца в собственном формате при наличии заданного порядкового номера столбца.Gets the value of the specified column in its native format given the column ordinal.

Item[String] Item[String] Item[String] Item[String]

Возвращает значение заданного столбца в собственном формате при наличии заданного имени столбца.Gets the value of the specified column in its native format given the column name.

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

Возвращает значение указанного столбца в собственном формате при наличии заданного порядкового номера столбца.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

Параметры

ordinal
Int32 Int32 Int32 Int32

Порядковый номер столбца (от нуля).The zero-based column ordinal.

Значение свойства

Значение заданного столбца в собственном формате.The value of the specified column in its native format.

Исключения

Переданный индекс находился вне диапазона от 0 до FieldCount - 1.The index passed was outside the range of 0 to FieldCount - 1.

Примеры

В следующем примере отображается содержимое всех столбцов во всех строках из переданного объекта DataTableReader.The following example displays the contents of all the columns, in all the rows from the supplied DataTableReader. Для получения значения, Item[String] содержащегося в каждом столбце, в коде C#используется метод (индексатор в Microsoft).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

Комментарии

Эта перегрузка для Item[String] ведет себя идентично GetValue методу.This overload for Item[String] behaves identically to the GetValue method.

Дополнительно

Item[String] Item[String] Item[String] Item[String]

Возвращает значение заданного столбца в собственном формате при наличии заданного имени столбца.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

Параметры

name
String String String String

Имя столбца.The name of the column.

Значение свойства

Значение заданного столбца в собственном формате.The value of the specified column in its native format.

Исключения

Заданное имя недопустимо для имени столбца.The name specified is not a valid column name.

Предпринята попытка извлечения данных из удаленной строки.An attempt was made to retrieve data from a deleted row.

Предпринята попытка чтения или доступа к столбцу закрытого объекта DataTableReader.An attempt was made to read or access a column in a closed DataTableReader.

Примеры

При наличии DataTableReader и имени столбца процедура жетвалуебинаме возвращает значение указанного столбца.Given a DataTableReader and a column name, the GetValueByName procedure returns the value of the specified column. Перед вызовом этой процедуры необходимо создать новый DataTableReader экземпляр и вызвать его метод Read, как минимум один раз, чтобы поместить указатель на строку в строке данных.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

Комментарии

Сначала выполняется поиск с учетом регистра.A case-sensitive lookup is performed first. В случае сбоя выполняется второй Поиск без учета регистра.If it fails, a second case-insensitive search is made.

Этот метод не чувствителен к ширине японской азбуки.This method is kana-width insensitive.

Эта перегруженная версия Item[String] соответствует GetOrdinal вызову метода GetValue и последующему вызову метода.This overloaded version of Item[String] corresponds to calling the GetOrdinal method, and then subsequently calling the GetValue method.

Применяется к