Sto caricando un documento XML con alcuni tag privi di testo interno.XMLDocument.Save aggiunge carrelli di ritorno in XML quando gli elementi sono vuoti
Se io popolo della InnerText con alcuni dati allora funziona come necessario (si ottiene tag di apertura, InnerText e tag di chiusura tutto su una riga) come la seguente ...
<root>
<element>value</element>
</root>
Il problema si pone con le etichette senza valori. Questi dovrebbero essere visualizzati nello stesso modo come sopra con l'eccezione di alcun valore grossolano, come il seguente ...
<root>
<element></element>
</root>
Tuttavia, quando l'InnerText ha una stringa vuota si aggiunge un ritorno avanzamento & linea che non è quello che ci si aspetta! Si finisce per assomigliare alla seguente ...
<root>
<element>
</element>
</root>
Questo è il mio codice corrente che produce i risultati di cui sopra ...
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(@"C:\test.xml");
//Save the xml and then cleanup
xmlDoc.Save(@"C:\test.xml");
Non capisco perché funzioni e XmlDocument PreserveWhiteSpace continua a fallire, ma ha risolto il mio problema. –
Grazie mille. per me funziona. –
Questo ci ha aiutato con un problema che stavamo causando un database che non veniva generato correttamente da un output xml modificato. Il problema erano le nuove linee generate dal metodo 'XmlDocument.Save()' sugli elementi vuoti. Grazie! –