Show TOC Anfang des Inhaltsbereichs

Diese Grafik wird im zugehörigen Text erklärt Mapping definieren  Dokument im Navigationsbaum lokalisieren

Um einen Datenaustausch zu ermöglichen, können Sie Knoten eines Contextes an solche aus dem Context eines anderen Controllers binden. Dieses Vorgehen wird Definieren eines Mappings genannt. Sie definieren ein Mapping jeweils für einen Knoten des Contextes, den Sie gerade bearbeiten. Als Ziel-Objekte für ein Mapping stehen Ihnen grundsätzlich die Contexte aller View-übergreifenden Controller der aktuellen Component zur Verfügung. Zusätzlich können die Contexte der Interface-Controller verwendeter Components für ein Mapping genutzt werden.

Um ein Mapping definieren zu können muss zunächst folgendes beachtet werden:

Diese Grafik wird im zugehörigen Text erklärt Unabhängig davon, ob Sie einen Controller der aktuellen oder einer fremden Component verwenden wollen muss auf der Registerkarte Eigenschaften des aktuellen Controllers eine Verwendungs-Deklaration für den für ein Mapping vorgesehenen Controller eingetragen sein.

 

Sie haben die Möglichkeit, die nötige Controller-Verwendung auch direkt von der Registerkarte Context aus anzulegen indem Sie die Schaltfläche Verwendete Controller über der linken Context-Anzeige klicken. Sie bekommen in einem neuen Fenster dann alle verfügbaren Controller zur Auswahl angeboten, das heisst, alle in Frage kommenden Controller Ihrer aktuellen Component sowie die Interface-Controller aller Components für die eine Component-Verwendung deklariert wurde.

Diese Grafik wird im zugehörigen Text erklärt Ein Mapping zwischen zwei Knoten des selben Contextes ist ebenso wenig möglich wie ein Mapping auf den Context einer View.

Ein Mapping, welches zu einer rekursiven Mapping-Beziehung führen würde, ist ebenfalls nicht möglich und wird daher von der Workbench nicht zugelassen.

 

Es ist nicht möglich, ein Mapping für den Wurzelknoten CONTEXT zu definieren. Für die Erzeugung eines Mappings ist es daher Voraussetzung, dass zunächst ein Knoten unterhalb des Wurzelknotens angelegt wurde. Sie können jedoch für diesen Unterknoten eines Wurzelknotens ein Mapping auf den Wurzelknoten eines anderen Contextes definieren.

Diese Grafik wird im zugehörigen Text erklärt

Wenn die Struktur des Knotens, auf welchen ein Mapping definiert wurde, im Knoten des aktuell bearbeiteten Contextes noch nicht vorhanden ist, so wird sie im Rahmen des Vorgangs der Mapping-Definition dort angelegt.

 

Diese Grafik wird im zugehörigen Text erklärt

Erzeugen eines Mappings per Drag&Drop

Die einfachste Möglichkeit ein Mapping zu erzeugen besteht darin, den gewünschten Context-Knoten des verwendeten Controllers zu markieren und anschließend bei gedrückter Maustaste auf den gewünschten Knoten des aktuell bearbeiteten Controller-Contexts zu ziehen. Nach dem Bestätigen des folgenden Dialogfensters ist der Context-Knoten des fremden Controllers-Contexts in den des aktuell bearbeiteten Contexts hineinkopiert worden und gleichzeitig wurde das gewünschte Mapping dieser Kopie auf den Knoten im ursprünglichen Context definiert.

Mapping aktualisieren

Wurden innerhalb des Knotens auf den ein Mapping definiert wurde (in der oben stehenden Grafik ist dies der Context des Component-Controllers) Änderungen vorgenommen, führt dies zu einem inkonsistenten Zustand des Mappings. Bei der Prüfung bzw. Aktivierung des Contextes, welcher den Knoten enthält für den das Mapping definiert wurde (im oberen Beispiel ist dies der Context der View  1), wird in diesem Fall eine Fehlermeldung ausgegeben. Zur Beseitigung dieser Inkonsistenz wählen Sie im Kontextmenü des betreffenden Knotens (im oberen Beispiel also der Knoten Node 1) den Eintrag Aktualisieren Mapping. Dies hat zur Folge, dass die Elemente des Knotens des aktuellen Contexts wieder an die Elemente des Knotens auf den das Mapping definiert wurde, angeglichen werden.

Diese Grafik wird im zugehörigen Text erklärt Mit der Aktualisierung eines View-Context-Knotens kann wiederum eine Inkonsistenz zu vorhandenen Datenbindungs-Definitionen zu UI-Elementen einher gehen. Prüfen Sie daher, ob nach der Aktualisierung des Mappings die Datenbindungen der UI-Elemente an die Elemente des Context-Knotens noch korrekt sind.

Mapping löschen

Ein Mapping zwischen zwei Context-Knoten lässt sich durch den Kontextmenü-Eintrag Löschen Mapping  wieder entfernen.

 

Ende des Inhaltsbereichs