Zdravím, dělám si takovou cvičnou aplikaci, na které bych se chtěl naučit pracovat s XML. Moje znalosti vycházají především z článku, který je zde na webu a něco málo z knihy o Visual Basicu. Ovšem narazil jsem na dva zádrhely. 1) Mám XML schéma na evidenci filmů a chtěl bych si napsat kód, který by přidal novou položku. Mám takovéto XML schéma:
<?xml version="1.0" encoding="utf-8"?>
<pujcovna>
<Kartoteka id="1">
<Drama>
<film id="1" nazev="Film1" mnozstvi="1"></film>
<film id="2" nazev="Film2" mnozstvi="1"></film>
<film id="3" nazev="Film3" mnozstvi="1"></film>
</Drama>
</Kartoteka>
</pujcovna>
Já bych chtěl přidat nový film, ovšem nevím, jak mám "namapovat" cestu. Proto se mi film vloží tam, kam nechci.
doc.SelectNodes("pujcovna/kartoteka/drama")
Dim xmlR As XmlNode = doc.DocumentElement
Dim ProgramElement As XmlElement = doc.CreateElement("drama")
ProgramElement.SetAttribute("id", "4")
ProgramElement.SetAttribute("nazev", "film4")
ProgramElement.SetAttribute("mnozstvi", "4")
xmlR.InsertAfter(ProgramElement, xmlR.LastChild)
doc.Save("data.xml")
Já bych chtěl vložit film do <drama></drama>, ale on se vloží do <pujcovna></pujcovna>. Dále bych měl ještě otázku. Pro editaci záznamů nyní používám cyklus, kde projdu celý seznam a jakmile jde na řadu ID, které chci změnit, změním ho. Přijde mi to ale složité. Existuje v XML nějaká obdoba klauzule WHERE? Nikde jsem se to nedočetl, tak předpokládám, že tady nic takového asi není, ale raději se zeptám :-) Předem díky za pomoc.
|