Internet-Aware Objekte

Es gibt bestimmte Kategorien, die die Persistenzschnittstellen abdecken. diese wurden als Ergebnis der Definition der Funktionsweise von Steuerelementen im Internet identifiziert. Ein Container, der nicht den gesamten Bereich von Persistenzschnittstellen unterstützt, sollte sicherstellen, dass er kein Steuerelement hosten kann, das eine Kombination von Schnittstellen erfordert, die er nicht unterstützt.

In den folgenden Tabellen wird die Bedeutung verschiedener Kategorien als implementierte und erforderliche Kategorien beschrieben.

Erforderliche Kategorien Beschreibung
CATID _ PersistsToMoniker, CATID _ PersistsToStreamInit, CATID _ PersisitsToStream, CATID _ PersistsToStorage, CATID _ PersistsToMemory, CATID _ PersistsToFile, CATID _ PersistsToPropertyBag
Jede dieser Kategorien schließen sich gegenseitig aus und wird nur verwendet, wenn ein Objekt überhaupt nur einen Persistenzmechanismus unterstützt (daher der gegenseitige Ausschluss). Container, die den von einer dieser Kategorien beschriebenen Persistenzmechanismus nicht unterstützen, sollten sich selbst daran hindern, Objekte von Klassen zu erstellen, die so markiert sind.
CATID _ RequiresDataPathHost
Das -Objekt erfordert die Möglichkeit, Daten in einem oder mehrere Pfade zu speichern, und erfordert die Einbindung von Containern, daher ist Containerunterstützung für IBindHost erforderlich.
Implementierte Kategorien Beschreibung
CATID _ PersistsToMoniker, CATID _ PersistsToStreamInit, CATID _ PersistsToStream, CATID _ PersistsToStorage, CATID _ PersistsToMemory, CATID _ PersistsToFile, CATID _ PersistsToPropertyBag
Das -Objekt unterstützt den entsprechenden * IPersist-Mechanismus für die Kategorie.

Die folgende Tabelle enthält die genauen CATIDs, die den einzelnen Kategorien zugewiesen sind:

Kategorie Catid
CATID _ RequiresDataPathHost
0de86a50-2baa-11cf-a229-00aa003d7352
CATID _ PersistsToMoniker
0de86a51-2baa-11cf-a229-00aa003d7352
CATID _ PersistsToStorage
0de86a52-2baa-11cf-a229-00aa003d7352
CATID _ PersistsToStreamInit
0de86a53-2baa-11cf-a229-00aa003d7352
CATID _ PersistsToStream
0de86a54-2baa-11cf-a229-00aa003d7352
CATID _ PersistsToMemory
0de86a55-2baa-11cf-a229-00aa003d7352
CATID _ PersistsToFile
0de86a56-2baa-11cf-a229-00aa003d7352
CATID _ PersistsToPropertyBag
0de86a57-2baa-11cf-a229-00aa003d7352

Komponentenkategorien