CCustomRowset (CustomRS.H)

Мастер создает запись для объекта набора строк. В этом случае это называется CCustomRowset. Класс CCustomRowset наследует от класса поставщика OLE DB, который CRowsetImplреализует все необходимые интерфейсы для объекта набора строк. В следующем коде показана цепочка наследования для CRowsetImpl:

template <class T, class Storage, class CreatorClass,
   class ArrayType = CAtlArray<Storage>>
class CMyRowsetImpl:
   public CRowsetImpl<T, Storage, CreatorClass, ArrayType,
      CSimpleRow, IRowsetLocateImpl< T >>

CRowsetImpl также использует IAccessor интерфейсы и IColumnsInfo интерфейсы. Он использует эти интерфейсы для выходных полей в таблицах. Класс также предоставляет реализацию, IRowsetIdentityкоторая позволяет потребителю определить, совпадают ли две строки. Интерфейс IRowsetInfo реализует свойства для объекта набора строк. Интерфейс IConvertType позволяет поставщику разрешать различия между типами данных, запрашиваемыми потребителем, и теми, которые используются поставщиком.

Интерфейс IRowset фактически обрабатывает получение данных. Потребитель сначала вызывает метод, вызываемый GetNextRows для возврата дескриптора в строку, которая называется HROW. Затем потребитель вызывает IRowset::GetData это HROW для получения запрошенных данных.

CRowsetImpl также принимает несколько параметров шаблона. Эти параметры позволяют определить, как CRowsetImpl класс обрабатывает данные. Аргумент ArrayType позволяет определить, какой механизм хранения используется для хранения данных строки. Параметр RowClass указывает, какой класс содержит HROWобъект.

Параметр RowsetInterface позволяет также использовать IRowsetLocate или IRowsetScroll интерфейс. IRowsetScroll И IRowsetLocate интерфейсы наследуются от IRowset. Поэтому шаблоны поставщиков OLE DB должны обеспечивать специальную обработку этих интерфейсов. Если вы хотите использовать любой из этих интерфейсов, необходимо использовать этот параметр.

См. также

Созданные мастером поставщика файлы