Quando si genera XML da XmlDocument in .NET, viene visualizzato un xmlns
attributo vuoto la prima volta che viene inserito un elemento senza uno spazio dei nomi associato; come si può prevenire questo?
Esempio:
XmlDocument xml = new XmlDocument();
xml.AppendChild(xml.CreateElement("root",
"whatever:name-space-1.0"));
xml.DocumentElement.AppendChild(xml.CreateElement("loner"));
Console.WriteLine(xml.OuterXml);
Produzione:
<root xmlns="whatever:name-space-1.0"><loner xmlns="" /></root>
Uscita desiderata :
<root xmlns="whatever:name-space-1.0"><loner /></root>
Esiste una soluzione applicabile al XmlDocument
codice, non qualcosa che si verifica dopo aver convertito il documento in una stringa con OuterXml
?
Il mio ragionamento per farlo è vedere se posso abbinare l'XML standard di un particolare protocollo usando l'XML generato da XmlDocument. L' xmlns
attributo vuoto non può rompere o confondere un parser, ma non è nemmeno presente in alcun utilizzo che ho visto di questo protocollo.