Есть ли способ десериализовать элементы, содержащие либо простой текст, либо вложенный элемент в строку с помощью XmlSerializer?
XML-образец:
<Attribute>
<AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">thisistext</AttributeValue>
<AttributeValue>
<e:Authorities xmlns:e="urn:dummy">
<e:Authority>ORG_CHIEF</esia-encoder:Authority>
</e:Authorities>
</AttributeValue>
</Attribute>
Свойство С#:
[XmlElement("AttributeValue", IsNullable = true)]
public string[] AttributeValue { get; set; }
Десериализация первого AttributeValue завершается успешно, но следующая завершается ошибкой. Неудивительно, потому что метод ReadElementString ожидает простое или пустое содержимое. Я ищу способ сообщить сериализатору «поместить содержимое этого элемента в строку, что бы он ни содержал».