Sdílet prostřednictvím


Zachování prázdného místa při serializaci (LINQ to XML)

Tento článek popisuje, jak řídit prázdné znaky při serializaci stromu XML.

Běžným scénářem je čtení odsazení XML, vytvoření stromu XML v paměti bez prázdných textových uzlů (tj. nezachovávání prázdných znaků), provádění některých operací s XML a následné uložení XML s odsazením. Při serializaci XML s formátováním se zachovají pouze významné prázdné znaky ve stromu XML. Toto je výchozí chování linQ to XML.

Dalším běžným scénářem je čtení a úpravy XML, které už byly záměrně odsazené. Toto odsazení možná nebudete chtít žádným způsobem změnit. Chcete-li to provést v LINQ to XML, zachováte prázdné znaky při načtení nebo parsování XML a zakázání formátování při serializaci XML.

Chování prázdných znaků metod, které serializují stromy XML

Následující metody ve XElement třídách XDocument serializují strom XML. Strom XML můžete serializovat do souboru, TextReadernebo XmlReadernebo . Metoda ToString serializuje na řetězec.

Pokud metoda nepřebere SaveOptions jako argument, metoda naformátuje (odsadí) serializovaný XML. V tomto případě se všechny nevýznamné prázdné znaky ve stromu XML zahodí.

Pokud metoda vezme SaveOptions jako argument, můžete určit, že metoda není formátována (odsadit) serializovaný XML. V tomto případě se zachovají všechny prázdné znaky ve stromu XML.