Problème génération XML (absence de quote => déclaration invalide)
Bonjour,
Je dois convertir un objet XmlDocument en String. Pour cela, j'utilise le code suivant :
Remplissage du XmlDocument :
Code:
1 2 3 4 5 6 7 8 9 10 11
| document = new XmlDocument();
XmlDeclaration declaration = document.CreateXmlDeclaration("1.0", "UTF-8", "");
XmlElement eRoot = document.CreateElement(XT_ROOT_NODE);
XmlElement eType = document.CreateElement(XT_MESSAGE_TYPE);
eType.InnerText = MT_REQUEST;
eRoot.AppendChild(eType);
//... Ca continue |
Passage du XmlDocument à une String :
Code:
1 2 3 4 5 6 7
| public String convertToXml()
{
StringWriter sw = new StringWriter();
XmlTextWriter xw = new XmlTextWriter(sw);
document.WriteTo(xw); // document est un XmlDocument
return sw.ToString();
} |
Le problème, c'est que la déclaration obtenue est ainsi :
<?xml version=1.0 encoding=UTF-8?>
Alors qu'il faudrait qu'elle soit ainsi :
<?xml version='1.0' encoding='UTF-8'?> (avec quotes) pour être valide.
Que dois-je faire pour obtenir une déclaration valide ?
Note : je n'ai pas inclus d'attribut dans mon xml, donc je ne sais pas si on rencontre le même problème dans ce cas.
Merci d'avance :)