API:CDataNodeList
Aus STNE-Wiki
fertige Scripte | Anleitungen und FAQ | Überblick über die Scripting-Sektion | API-Übersicht | Hilfen zum Arbeiten im Wiki |
Allgemein
CDataNodeList ist ein Listenobjekt, welches Objekte vom Typ CDataNode aufnimmt. Es ist das "Arbeitstier" der Datenbank-Verwaltung und kommt bei jeder Abfrage oder beim Schreiben in eine Datenbank vor.
In den meisten Fällen erstellt man keine CDataNodeList direkt, sondern erhält diese direkt aus einem CDataNodeStorage oder CDataNode:
Var Liste As New CDataNodeList;
Parameter hat die "New" Funktion nicht.
Man kann nun entweder einzelne CDataNodes manuell zur Liste hinzufügen
Liste.Add(Node);
wobei "Node" hier vom Typ CDataNode sein muss
oder man erstellt eine Liste aus einem CDataNode
Liste = Node.Items;
oder übernimmt die oberste Ebene eines CDataNodeStorage
Liste = Storage.Items;
"Storage" ist hier vom Typ CDataNodeStorage.
Typisches Beispiel
Var Storage As New CDataNodeStorage('Mein Datenspeicher', 1); Storage.Items.Add('BerechtigteUser'); If( not Storage.Items.Item('BerechtigteUser').Items.ContainsKey(CStr(MyShip.UserID))) { Storage.Items.Item('BerechtigteUser').Items.Add(CStr(MyShip.UserID)); }
An jeder Stelle wo Items steht wird eine CDataNodeList "verwendet". Diese Zeilen öffnen bzw. erstellen eine Datenbank mit dem Namen "Mein Datenspeicher", fügen der obersten Ebene des Speichers (Ebenen siehe CDataNodeStorage) einen Knoten "BerechtigteUser" hinzu und fügen diesem Knoten (auch wieder über "Items"/CDataNodeList) einen Unterknoten mit der UserID des Users der das Portal installiert hat hinzu. Vorher wird noch geprüft, ob dieser Knoten evtl. schon vorhanden ist (sollte immer gemacht werden sonst gibt es Laufzeitfehler).
Methoden
Die wichtigsten Eigenschaften oder Methoden sind die folgenden:
Methode | Erklärung |
---|---|
Add | Fügt einen CDataNode ein. Es gbt dabei mehrere Möglichkeiten (siehe Objektexplorer) |
AddDate | Nützlich um Objekte vom Typ Date hinzuzufügen. Es gibt noch weitere Add-Methoden im Objektexplorer aufgelistet. |
Clear | Löscht den Listeninhalt (VORSICHT: Es werden auch alle Unterknoten gelöscht!) |
ContainsKey | Sehr wichtig. Übernimmt einen String und gibt einen Boolean-Wert zurück ob der Knoten mit diesem Namen in der Liste ist |
Count | Gibt einen Integer-Wert zurück mit der Anzahl der Knoten in der Liste |
Item | Gibt den entsprechenden CDataNode zurück. Beispiel: Storage.Items.Item('Knoten'); (siehe CDataNodeStorage) |
Parent | Liefert den übergeordneten CDataNode zurück. |
Remove | Löscht einen bestimmten CDataNode in der Liste. |
Rename | Benennt einen CDataNode aus der Liste um. |
Die vollständige Liste findest du direkt im Objektexplorer unter (http://game.stne.net/ObjectExplorer.aspx?p=CDataNodeList)
--SimonSlater 16:28, 20. Aug. 2010 (CEST)