Sto usando XmlTextWriter
e il suo metodo WriteElementString
, ad esempio:C#: XmlTextWriter.WriteElementString non riesce su stringhe vuote?
XmlTextWriter writer = new XmlTextWriter("filename.xml", null);
writer.WriteStartElement("User");
writer.WriteElementString("Username", inputUserName);
writer.WriteElementString("Email", inputEmail);
writer.WriteEndElement();
writer.Close();
L'output XML atteso è:
<User>
<Username>value</Username>
<Email>value</Email>
</User>
Tuttavia, se per esempio inputEmail è vuota, il codice XML risultato che ottengo come come segue:
<User>
<Username>value</Username>
<Email/>
</User>
mentre mi aspetto che sia:
<User>
<Username>value</Username>
<Email></Email>
</User>
Cosa sto sbagliando? C'è un modo per raggiungere il risultato atteso in modo semplice usando XmlTextWriter
?
questa soluzione non funziona alla mia estremità stranamente –
Ho usato la stessa identica soluzione che hai fornito e il metodo WriteFullEndElement() non sembra funzionare ... Methinks questo metodo è difettoso. –
Ho trovato una soluzione alternativa in C#. Se (string.Length == 0), sostituisci la stringa vuota con un carattere di escape di nuova riga, ad esempio "\ n" –