Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Uzly a obsah v dokumentu můžete upravovat mnoha způsoby. Můžete:
Změňte hodnotu uzlů pomocí Value vlastnosti.
Upravte celou sadu uzlů nahrazením uzlů novými uzly. To se provádí pomocí InnerXml vlastnosti.
Nahraďte existující uzly novými uzly pomocí RemoveChild metody.
Přidejte další znaky do uzlů, které dědí z XmlCharacterData třídy pomocí AppendData, InsertData nebo ReplaceData metody.
Upravte obsah odebráním rozsahu znaků pomocí DeleteData metody u typů uzlů, které dědí z XmlCharacterData.
Jednoduchá technika pro změnu hodnoty uzlu je použít node.Value = "new value";
. Následující tabulka uvádí typy uzlů, na které tento jediný řádek kódu funguje, a přesně jaká data pro daný typ uzlu se mění.
Typ uzlu | Změna dat |
---|---|
Vlastnost | Hodnota atributu. |
CDATASection (sekce znakových dat) | Obsah „CDATASection“ |
Komentář | Obsah komentáře. |
PokynKeZpracování | Obsah kromě cíle. |
Text | Obsah textu. |
Deklarace XML | Obsah deklarace, s výjimkou <?xml a ?> označení. |
Prázdné místo | Hodnota prázdného místa. Hodnotu můžete nastavit jako jeden z těchto čtyř rozpoznaných znaků XML: mezera, tab, CR nebo LF. |
SignificantWhitespace | Hodnota významného prázdného místa. Hodnotu můžete nastavit jako jeden z těchto čtyř rozpoznaných znaků XML: mezera, tab, CR nebo LF. |
Jakýkoli typ uzlu, který není uvedený v tabulce, není platným typem uzlu pro nastavení hodnoty. Nastavení hodnoty u jakéhokoli jiného typu uzlu vyvolá výjimku InvalidOperationException.
Vlastnost InnerXml změní označení podřízených uzlů pro aktuální uzel. Nastavení této vlastnosti nahradí podřízené uzly parsovaným obsahem daného řetězce. Analýza se provádí v aktuálním kontextu jmenného prostoru. Kromě toho InnerXml odebere nadbytečné deklarace oboru názvů. V důsledku toho četné operace vyjmutí a vložení nezvětší velikost dokumentu kvůli redundantním deklaracím oboru názvů. Příklad kódu, který ukazuje vliv oborů názvů na operaci InnerXml, viz vlastnost InnerXml.
Při použití metod ReplaceData a RemoveChild metody vrátí nahrazený nebo odebraný uzel. Tento uzel je pak možné znovu vložit někam jinam v modelu DOM (Document Object Model) XML. Metoda ReplaceData provádí dvě ověřovací kontroly na uzlu, který se vkládá do dokumentu. První kontrola ověřuje, že se uzel stane potomkem uzlu, který může mít potomky svého typu. Druhá kontrola zajistí, že vložený uzel není předkem uzlu, jehož se stává dceřiným uzlem. Porušení některé z těchto podmínek vyvolá InvalidOperationExceptionvýjimku .
Je přípustné přidat nebo odebrat podřízený prvek určený pouze pro čtení z uzlu, který lze upravit. Pokusy o úpravu samotného uzlu jen pro čtení však vyvolají InvalidOperationExceptionvýjimku. Příkladem je úprava poduzlů uzlu XmlEntityReference. Podřízené položky jsou pouze pro čtení a nelze je upravovat. Jakýkoli pokus o jejich úpravu vyvolá výjimku InvalidOperationException.