Navigieren in der COM+-Auflistungshierarchie

Einige Auflistungen können Sie problemlos abrufen, indem Sie die GetCollection-Methode für das COMAdminCatalog-Objekt verwenden. Diese Methode ruft eine Auflistung der obersten Ebene ab. d. h. eine Sammlung wie Applications, die für sich allein steht und die eindeutig ist und nicht logisch unter einer anderen Auflistung subsumiert wird.

Viele Auflistungen werden jedoch logisch unter einer anderen Auflistung subsumiert, da sie Elemente enthalten, die Teil einer größeren Struktur sind. Beispielsweise ist die Components-Auflistung subsumiert oder bezieht sich auf die Applications-Auflistung , 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 einzelne Anwendung.

Daher werden Sammlungen in einer hierarchischen Struktur angeordnet, die natürlich den logischen Beziehungen zwischen den darin enthaltenen Elementen entspricht. Ein Diagramm der Auflistungshierarchie 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 Auflistungshierarchie navigieren, um das entsprechende Element abzurufen.

Dies bedeutet in der Praxis, dass Sie, wenn Sie ein Element in einer verknüpften Sammlung erhalten möchten, alle erforderlichen höheren Ebenen durchlaufen müssen, indem Sie zuerst Sammlungen subsumieren. Zum Abrufen einer verknüpften Sammlung 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. Rufen Sie die Applications-Auflistung ab, und füllen Sie sie auf.
  2. Auflisten Sie den Inhalt der Applications-Auflistung , bis Sie zu dem Element gelangen, das der richtigen COM+-Anwendung entspricht.
  3. Rufen Sie die Components-Auflistung für diese bestimmte COM+-Anwendung ab, und füllen Sie sie auf.
  4. Auflisten 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 Sie die vorherigen Schritte ausführen:

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 "Applications". Die zweite wird von COMAdminCatalogCollection verfügbar gemacht und wird verwendet, um eine Sammlung abzurufen, die sich auf die aktuelle Auflistung bezieht. Sie geben genau an, welche Sammlung Sie benötigen, indem Sie den Namen "Components" und den Wert der Key-Eigenschaft des übergeordneten Objekts übergeben. Der Wert der Key-Eigenschaft ist häufig ein Name oder eine GUID, die das Objekt eindeutig identifiziert. Dieser Wert wird in der Dokumentation für jede Auflistung angegeben.

Im Allgemeinen 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 demselben allgemeinen Modell. Eine vollständige Liste der Sammlungen finden Sie unter COM+-Verwaltungssammlungen.

In einigen Fällen können Sie eine Verknüpfungsmethode verwenden, wenn Sie zum zweiten Mal einem Pfad durch die Sammlungshierarchie folgen. Sie können diese Methode nur verwenden, nachdem Sie bereits alle dazwischen liegenden Key-Werte zwischengespeichert haben. Weitere Informationen finden Sie unter ICOMAdminCatalog::GetCollectionByQuery.

Auffüllen von COM+-Auflistungen

Abfragen verfügbarer verwandter Sammlungen

Abrufen von Sammlungen im COM+-Katalog