У меня проблемы с десериализацией XML в C # Model. Я извлекаю этот XML из внешнего API, поэтому я не могу его контролировать. У него есть несколько узлов "InnerText", которые сериализованно не могут десериализовать правильно (последний выиграл, другие потеряли).
Я уже исправил это, используя класс XmlDocument, но мне нужно вместо этого сделать это с моделью.
XML, который я пытаюсь десериализовать:
<root>
<passage>
<hlword>Test</hlword>
your Internet.....
<hlword>test</hlword>
from Ookla.
</passage>
</root>
C # Классы:
[XmlRoot(ElementName = "passage")]
public class Passage
{
[XmlElement(ElementName = "hlword")]
public List<string> Hlword { get; set; }
[XmlText]
public string InnerText { get; set; }
}
[XmlRoot(ElementName = "root")]
public class Root
{
[XmlElement(ElementName = "passage")]
public List<Passage> Passage { get; set; }
[XmlText]
public string InnerText { get; set; }
}
Из приведенного выше примера мне нужно извлечь: "Проверьте свой интернет .. ... test from Ookla ", Вместо этого я получаю класс List of Passage с двумя Hlwords (внутренний текст" test ") и внутренним текстом в классе Root" из Ookla ". Весь текст после элементов опущен.