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 |