Мне нужно десериализовать ответ XML от внешнего сервиса, содержащего более 100 000 строк, но у меня есть проблема с неискажением числовых c ссылок на символы в разных местах. Поскольку DOM сложен, мне нужно глобальное решение, которое применяется ко всему документу, а не к его конкретным c элементам. У меня следующие ситуации:
<text>First &#38; Second</text>
Я использую следующую реализацию XmlSerializer:
public T DeserializeXmlReader<T>(string path) where T : class
{
XmlSerializer serializer = new XmlSerializer(typeof(T));
using (FileStream fileStream = new FileStream(path, FileMode.Open))
{
using (XmlReader xmlReader = XmlReader.Create(fileStream))
{
return (T)serializer.Deserialize(xmlReader);
}
}
}
После десериализации я получу следующий результат: «Первый и второй» вместо « Первая секунда". Я не уверен, есть ли какой-то дополнительный шаг, который мне нужно предпринять, чтобы правильно десериализовать «&»?
Примечание: После некоторых исследований я считаю, что проблема может быть похожа на эту, но я ' я не уверен, применимо ли это, поскольку это касается php: Как десериализовать строку xml вместе с удалением NCR?