Mit vom XML-Datenbindungsexperten generierten Quellcode arbeiten

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu XML-Dokumente mit dem Datenbindungs-Experten abstrahieren


Sobald der Experte den gewünschten Satz von Schnittstellen und Implementierungsklassen generiert hat, können Sie diese verwenden, um mit XML-Dokumenten zu arbeiten, die der Struktur des Dokuments oder Schemas entsprechen, die Sie dem Experten zur Verfügung gestellt haben. Wie bei der ausschließlichen Verwendung der integrierten XML-Komponenten ist Ihr Ausgangspunkt die Xml.XMLDoc.TXMLDocument-Komponente, die in der Kategorie Internet der Tool-Palette erscheint.

Um mit mit einem XML-Dokument zu arbeiten, führen Sie die folgenden Schritte durch:

  1. Fordern Sie eine Schnittstelle für den Stammknoten des XML-Dokuments an. Dies ist auf dreierlei Weise möglich:
Methode Beschreibung

Fügen Sie eine TXMLDocument-Komponente in das Formular oder Datenmodul ein. Binden Sie TXMLDocument an ein XML-Dokument, indem Sie die Eigenschaft FileName setzen.

(Als Alternative können Sie einen XML-String verwenden, indem Sie die Eigenschaft XML zur Laufzeit setzen.) Rufen Sie anschließend in Ihrem Quellcode die globale Funktion auf, welche der Experte erstellt hat, um eine Schnittstelle für den Stammknoten des XML-Dokuments abzurufen. Wenn es sich bei dem Stammelement des XML-Dokuments beispielsweise um den Tag <StockList> handelt, generiert der Experte standardmäßig die Funktion Getstocklist, die eine IXMLStockListType-Schnittstelle zurückgibt:

    var
      StockList: IXMLStockListType;
    begin
      XMLDocument1.FileName := 'Stocks.xml';
      StockList := Getstocklist(XMLDocument1);
    XMLDocument1->FileName := "Stocks.xml";
     _di_IStockListType StockList = GetStockListType(XMLDocument1);

Die erzeugte Funktion Load... aufrufen

Rufen Sie die generierte Funktion Load... auf, um die TXMLDocument-Instanz in einem einzigen Schritt zu erstellen, zu binden und ihre Schnittstelle abzurufen. Bei Verwendung des oben beschriebenen XML-Dokuments kann dieser Aufruf folgendermaßen lauten:

    var
      StockList: IXMLStockListType;
    begin
      StockList := Loadstocklist('Stocks.xml');
    _di_IStockListType StockList = LoadStockListType("Stocks.xml");

Die erzeugte Funktion New...... aufrufen

Rufen Sie die generierte Funktion New... auf, um die TXMLDocument-Instanz für ein leeres Dokument zu erstellen, wenn Sie alle Daten innerhalb der Anwendung erstellen möchten:

    var
      StockList: IXMLStockListType;
    begin
      StockList := Newstocklist;
    _di_IStockListType StockList = NewStockListType();
  1. Diese Schnittstelle verfügt über Eigenschaften, welche den Unterknoten des Stammelements des Dokuments entsprechen, sowie Eigenschaften, welche den Attributen des Stammelements entsprechen. Mit diesen Eigenschaften können Sie die Hierarchie des XML-Dokuments traversieren, die Daten im Dokument ändern usw.
  2. Um Änderungen an den vom Experten generierten Schnittstellen durchzuführen, rufen Sie die Methode SaveToFile der TXMLDocument-Komponente auf oder lesen Sie deren XML-Eigenschaft.

Tip:  Wenn Sie doAutoSave in die Einstellung der Eigenschaft Options des TXMLDocument-Objekts aufnehmen, brauchen Sie die Methode SaveToFile nicht explizit aufzurufen.

Siehe auch