J'ai une application qui est sensible à un retour de chariot étant \ r \ n ou \ n. Je passe une valeur en XML et quand je l'analyse en utilisant XDocument, la valeur de retransmission de chariot est convertie en \ n et j'essaie de trouver un moyen de la conserver en tant que \ r \ n.Conserver le retour chariot lors de l'utilisation de XDocument.Parse
string myVal = "1234\r\nabcd";
string xmlText = "<doc>" + myVal + "</doc>";
XDocument xDoc = XDocument.Parse(xmlText);
Console.WriteLine("result=" + (xDoc.Element("doc").Value == myVal));
Console.WriteLine("result=" + (xDoc.Element("doc").Value == myVal.Replace("\r\n", "\n")));
Résultats:
result=False
result=True
Ouais j'ai essayé l'option PreserveWhiteSpace sans joie. J'avais pensé à XmlReader, mais il semble que ce soit excessif d'utiliser un lecteur sur une chaîne. S'il n'y a pas de manière élégante, je vais probablement me contenter d'une recherche et remplacer la valeur que je reçois de l'analyse. – sipwiz