DataTableReader.Item[] Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение заданного столбца в его исходном формате.
Перегрузки
Item[Int32] |
Возвращает значение указанного столбца в собственном формате при наличии заданного порядкового номера столбца. |
Item[String] |
Возвращает значение заданного столбца в собственном формате при наличии заданного имени столбца. |
Item[Int32]
- Исходный код:
- DataTableReader.cs
- Исходный код:
- DataTableReader.cs
- Исходный код:
- DataTableReader.cs
Возвращает значение указанного столбца в собственном формате при наличии заданного порядкового номера столбца.
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
Порядковый номер столбца (от нуля).
Значение свойства
Значение указанного столбца в его собственном формате.
Исключения
Переданный индекс находился вне диапазона от 0 до FieldCount - 1.
Примеры
В следующем примере отображается содержимое всех столбцов во всех строках из предоставленного DataTableReader. Код использует Item[] метод (индексатор в Microsoft C#) для получения значения, содержащегося в каждом столбце.
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[] работает идентично методу GetValue .
См. также раздел
Применяется к
Item[String]
- Исходный код:
- DataTableReader.cs
- Исходный код:
- DataTableReader.cs
- Исходный код:
- DataTableReader.cs
Возвращает значение заданного столбца в собственном формате при наличии заданного имени столбца.
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
Имя столбца.
Значение свойства
Значение указанного столбца в его собственном формате.
Исключения
Заданное имя недопустимо для имени столбца.
Предпринята попытка извлечения данных из удаленной строки.
Предпринята попытка чтения или доступа к столбцу закрытого объекта DataTableReader.
Примеры
При указании DataTableReader имени столбца и процедура GetValueByName возвращает значение указанного столбца. Перед вызовом этой процедуры необходимо создать новый DataTableReader экземпляр и вызвать его метод Read по крайней мере один раз, чтобы разместить указатель строки на строке данных.
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
Комментарии
Сначала выполняется поиск с учетом регистра. В случае сбоя выполняется второй поиск без учета регистра.
Этот метод не учитывает ширину каны.
Эта перегруженная версия Item[] соответствует вызову GetOrdinal метода , а затем последующему вызову GetValue метода .