CCustomSession (CustomSess.H)

CustomSess.H contiene la dichiarazione e l'implementazione per l'oggetto sessione OLE DB. L'oggetto origine dati crea l'oggetto sessione e rappresenta una conversazione tra un consumer e un provider. È possibile aprire più sessioni simultanee per un'origine dati. L'elenco di ereditarietà per CCustomSession il seguente:

/////////////////////////////////////////////////////////////////////////
// CCustomSession
class ATL_NO_VTABLE CCustomSession :
   public CComObjectRootEx<CComSingleThreadModel>,
   public IGetDataSourceImpl<CCustomSession>,
   public IOpenRowsetImpl<CCustomSession>,
   public ISessionPropertiesImpl<CCustomSession>,
   public IObjectWithSiteSessionImpl<CCustomSession>,
   public IDBSchemaRowsetImpl<CCustomSession>,
   public IDBCreateCommandImpl<CCustomSession, CCustomCommand>

L'oggetto sessione eredita da IGetDataSource, ISessionPropertiesIOpenRowset, e IDBCreateCommand. L'interfaccia IGetDataSource consente a una sessione di recuperare l'origine dati che l'ha creata. Ciò è utile se è necessario ottenere proprietà dall'origine dati creata o da altre informazioni che l'origine dati può fornire. L'interfaccia ISessionProperties gestisce tutte le proprietà per la sessione. Le IOpenRowset interfacce e IDBCreateCommand vengono usate per eseguire il lavoro del database. Se il provider supporta i comandi, implementa l'interfaccia IDBCreateCommand . Viene usato per creare l'oggetto comando che può eseguire comandi. Il provider implementa sempre l'oggetto IOpenRowset . Viene usato per generare un set di righe da un provider. Si tratta di un set di righe predefinito ,ad esempio , "select * from mytable"da un provider.

La procedura guidata genera anche tre classi di sessione: CCustomSessionColSchema, CCustomSessionPTSchemae CCustomSessionTRSchema. Queste sessioni vengono usate per i set di righe dello schema. I set di righe dello schema consentono al provider di restituire metadati al consumer senza che il consumer deve eseguire una query o recuperare i dati. Il recupero dei metadati può essere molto più rapido rispetto alla ricerca delle funzionalità di un provider.

La specifica OLE DB richiede che i provider che implementano l'interfaccia IDBSchemaRowset supportino tre tipi di set di righe dello schema: DBSCHEMA_COLUMNS, DBSCHEMA_PROVIDER_TYPES e DBSCHEMA_TABLES. La procedura guidata genera implementazioni per ogni set di righe dello schema. Ogni classe generata dalla procedura guidata contiene un Execute metodo . In questo Execute metodo è possibile restituire dati al provider su quali tabelle, colonne e tipi di dati sono supportati. Questi dati sono noti in fase di compilazione.

Vedi anche

File del provider generati tramite procedura guidata