Navigieren in der COM+-Sammlungshierarchie

Einige Sammlungen, die Sie problemlos abrufen können, indem Sie die GetCollection-Methode für das COMAdminCatalog-Objekt verwenden. Diese Methode ruft eine Auflistung der obersten Ebene ab. Das heißt, eine Sammlung wie Applications, die eigenständig steht und eindeutig ist und nicht logisch unter einer anderen Auflistung untergliedert ist.

Viele Auflistungen werden jedoch logisch unter einer anderen Auflistung subsumiert, da sie Elemente enthalten, die Teil einer größeren Struktur sind. Beispielsweise wird die Components-Auflistung mit der Applications-Auflistung subsumiert oder verknüpft, da sie die Komponenten enthält, die in einer bestimmten COM+-Anwendung installiert sind, die selbst einem Element in der Applications-Auflistung entspricht. Verwandte Sammlungen wie diese sind nicht eindeutig. es gibt eine Components-Auflistung für jede unterschiedliche Anwendung.

Daher werden Auflistungen in einer hierarchischen Struktur angeordnet, die natürlich den logischen Beziehungen zwischen den elementen entspricht, die sie enthalten. Ein Diagramm der Sammlungshierarchie finden Sie unter COM+-Verwaltungssammlungen. Für viele der Elemente, die Sie mithilfe der COMAdmin-Objekte konfigurieren möchten, müssen Sie durch einen Teil der Sammlungshierarchie navigieren, um das entsprechende Element abzurufen.

Dies bedeutet in der Praxis, dass Sie, wenn Sie ein Element in einer verknüpften Sammlung abrufen möchten, zuerst alle erforderlichen übergeordneten Ebenen durchlaufen und Sammlungen aufzählen müssen. Um eine verknüpfte Auflistung abzurufen, müssen Sie das spezifische Element in der übergeordneten Auflistung abrufen, mit dem die untergeordnete Auflistung verknüpft ist. Wenn Sie beispielsweise ein Element konfigurieren möchten, das einer Komponente in einer bestimmten COM+-Anwendung entspricht, müssen Sie die folgenden Schritte ausführen:

  1. Abrufen der Applications-Sammlung und Auffüllen.
  2. Aufzählen sie den Inhalt der Anwendungsauflistung, bis Sie zu dem Element gelangen, das der richtigen COM+-Anwendung entspricht.
  3. Abrufen und Auffüllen der Components-Auflistung für diese bestimmte COM+-Anwendung.
  4. Aufzählen sie den Inhalt der Components-Auflistung, bis Sie zu dem Element gelangen, das der richtigen Komponente entspricht.

Im folgenden Microsoft Visual Basic Beispiel wird gezeigt, wie die vorherigen Schritte ausgeführt werden:

On Error GoTo My_Error_Handler

Dim Catalog As COMAdminCatalog 
Set Catalog = CreateObject("COMAdmin.COMAdminCatalog")

' Get the Applications collection and populate it.
Dim Applications As COMAdminCatalogCollection 
Set Applications = Catalog.GetCollection("Applications") 
Applications.Populate

' Get the correct application, "My Application".
Dim AppObject As COMAdminCatalogObject 
For Each AppObject in Applications 
    If AppObject.Name = "My Application" Then 
        Exit For 
    End If
Next 

' Get and populate the Components collection for "My Application".
Dim Components As COMAdminCatalogCollection 
Set Components = Applications.GetCollection("Components", AppObject.Key) 
Components.Populate

' Get the correct component, "My Component".
Dim CompObject As COMAdminCatalogObject 
For Each CompObject in Components 
    If CompObject.Name = "My Component" Then 
        Exit For 
    End If
Next 

Im vorherigen Beispiel werden zwei unterschiedliche GetCollection-Methoden verwendet. Die erste wird von COMAdminCatalog verfügbar gemacht und zum Abrufen einer Sammlung der obersten Ebene verwendet, in diesem Fall "Anwendungen". Die zweite wird von COMAdminCatalogCollection verfügbar gemacht und zum Abrufen einer Sammlung verwendet, die sich auf die aktuelle Sammlung bezieht. Sie geben genau an, welche Sammlung Sie verwenden möchten, indem Sie den Namen "Components" und den Key-Eigenschaftswert des übergeordneten Objekts übergeben. Der Key-Eigenschaftswert ist häufig ein Name oder eine GUID, die das Objekt eindeutig identifiziert. dieser Wert wird in der Dokumentation für jede Sammlung identifiziert.

Im allgemeinen Fall müssen Sie verwandte Sammlungen iterativ in der Sammlungshierarchie abrufen, bis Sie die gewünschte Sammlung abrufen. Die Schritte, die Sie ausführen würden, folgen wiederholt dem gleichen allgemeinen Modell. Eine vollständige Liste der Sammlungen finden Sie unter COM+-Verwaltungssammlungen.

In einigen Fällen möchten Sie möglicherweise eine Verknüpfungsmethode verwenden, wenn Sie ein zweites Mal einem Pfad durch die Auflistungshierarchie folgen. Sie können diese Methode nur verwenden, nachdem Sie alle dazwischen liegenden Schlüsselwerte bereits zwischengespeichert haben. Weitere Informationen finden Sie unter ICOMAdminCatalog::GetCollectionByQuery.

Auffüllen von COM+-Sammlungen

Abfragen verfügbarer verwandter Sammlungen

Abrufen von Sammlungen im COM+-Katalog