Мне нужно десериализовать XML, который использует поле «тип», чтобы указать, какой контент ожидать. Тип 0 говорит, что я могу ожидать простой текст, в то время как тип 1 указывает, что содержимое имеет более сложную структуру.
Я знаю, что мог бы написать какой-то собственный механизм десериализации, но хотел бы знать, существует ли какой-либо встроенный способчтобы решить это.
Так как XMLSerializer ожидает строку, он просто выбрасывает содержимое в случае, если это XML. Это мешает мне запустить десериализацию контента как второй шаг.
<Msg>
<MsgType>0</MsgType>
<Data>Some text</Data>
</Msg>
<Msg>
<MsgType>1</MsgType>
<Data>
<Document>
<Type>PDF</Type>
.....
</Document>
</Data>
</Msg>