Поделиться через


DataViewRow Класс

Определение

Логическая строка данных. Может быть строкой отдельной IDataView строки или отдельной.

public abstract class DataViewRow : IDisposable
type DataViewRow = class
    interface IDisposable
Public MustInherit Class DataViewRow
Implements IDisposable
Наследование
DataViewRow
Производный
Реализации

Конструкторы

DataViewRow()

Логическая строка данных. Может быть строкой отдельной IDataView строки или отдельной.

Свойства

Batch

Это предоставляет средства для сверки нескольких строк, созданных в целом из GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random). При получении набора необходимо, позволяя параллельной обработке продолжаться, всегда иметь цель, чтобы исходный порядок должен быть восстановлен. Обратите внимание, заботится ли пользователь о том, что исходный порядок в конкретном приложении является другой историей в целом (большинство вызывающих этого в качестве практического вопроса не делают, в противном случае они не будут называть его), но по крайней мере в принципе можно восстановить исходный порядок, который можно получить от одинаково настроенного GetRowCursor(IEnumerable<DataViewSchema.Column>, Random). Таким образом, для любой реализации курсора номера пакетов должны не уменьшаться. Кроме того, любой указанный номер пакета должен отображаться только в одном из курсоров, возвращаемых .GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random) Таким образом порядок определяется номером пакета. Операция, которая согласовывает эти курсоры для создания согласованного одного курсора, может сделать это путем рисования из одного курсора среди всех курсоров в наборе с наименьшим доступным номером пакета.

Обратите внимание, что нет никаких предположений о том, что пакеты для определенной записи будут согласованы от курсора к курсору, за исключением согласованности, что приводит к тому, что такое же общее упорядочение. Одна и та же запись может иметь разные номера пакетов от одного курсора к другому. Кроме того, нет никаких требований, что любой указанный номер пакета должен отображаться вообще. Это просто механизм восстановления порядка из произвольного секционирования данных. Это также следует из этого, конечно, что, учитывая пакет, который является свойством данных, является абсолютно недопустимым.

Position

Это увеличивается при изменении базового содержимого, предоставляя клиентам способ обнаружения изменений. Он должен иметь значение -1, если объект находится в состоянии, где невозможно получить значения. В частности, для , DataViewRowCursorэто будет раньше MoveNext() , если когда-либо вызываться в первый раз, или после первого MoveNext() вызова и возврата false.

Обратите внимание, что эта позиция не находится в базовых данных, а только позиция этого курсора. Если один из них, например, открыл набор параллельных потоковых курсоров или курсор с перетасовкой, первая допустимая запись такого курсора всегда будет иметь позицию 0.

Schema

SchemaВозвращает значение, которое предоставляет сведения об имени и типе для переменных (т. е. столбцов в системе типов ML.NET), хранящихся в этой строке.

Методы

Dispose()

Реализация удаления. Вызовы Dispose(Boolean) с true.

Dispose(Boolean)

Одноразовый метод для утилизируемых шаблонов. Эта реализация по умолчанию ничего не делает.

GetGetter<TValue>(DataViewSchema+Column)

Возвращает делегат метода получения значения для получения значения заданного columnзначения из строки. Это вызывает исключение, если столбец не активен в этой строке или тип TValue отличается от типа этого столбца.

GetIdGetter()

Метод получения для 128-разрядного значения идентификатора. Обычно объекты служат нескольким DataViewRow экземплярам для итерации того, что должно быть одинаковыми данными, например, в IDataView наборе курсоров создаются те же данные, что и последовательный курсор, только что секционированные, и перемешанный курсор создает те же данные, что и последовательный курсор или любой другой перетасованный курсор. только перетасовывался. Идентификатор существует для приложений, которым необходимо согласовать, какая запись на самом деле является какой. В идеале этот идентификатор должен быть уникальным, но по практическим причинам достаточно, если столкновения просто чрезвычайно невероятны.

Обратите внимание, что этот идентификатор, хотя он должен быть согласован для нескольких потоков в соответствии с семантикой выше, не считается частью данных в зависимости от того, что они являются частью. Таким образом, чтобы получить пример представления данных, одно представление данных должно визуализировать согласованные идентификаторы во всех курсорах, но нет никакого предложения, что если бы "одинаковые" данные были представлены в другом представлении данных (например, преобразование, кэширование, сохранение или любое другое), что идентификаторы между двумя различными представлениями данных будут иметь какие-либо заметные связи.

IsColumnActive(DataViewSchema+Column)

Возвращает значение, указывающее, активен ли данный столбец в этой строке.

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