Итак, я работаю с некоторыми файлами XML, которые, по моему мнению, скорее всего плохо сформированы, и пытаюсь выяснить, как и можно ли использовать XmlSerializer для десериализации этого XML в логический бизнес-объект. Допустим, у меня есть следующий XML-файл:
<Root>
<ArrayType1 Name="Bob"/>
<ArrayType1 Name="Jim"/>
<ArrayType2 Name="Frank">
<SubItem Value="4"/>
</ArrayType2>
<ArrayType2 Name="Jimbo">
<SubItem Value="2"/>
</ArrayType2>
</Root>
Теперь я хотел бы создать класс, который имеет эти три типа: Root, ArrayType1 и ArrayType2, но я хотел бы получить два списка в Root, один из которых содержит коллекцию элементов ArrayType1, а другой - коллекцию элементов ArrayType2, но кажется, что у этих элементов должен быть какой-то корень, например, я знаю, как десериализовать следующее:
<Root>
<ArrayType1Collection>
<ArrayType1 Name="Bob"/>
<ArrayType1 Name="Jim"/>
</ArrayType1Collection>
<ArrayType2Collection>
<ArrayType2 Name="Frank">
<SubItem Value="4"/>
</ArrayType2>
<ArrayType2 Name="Jimbo">
<SubItem Value="2"/>
</ArrayType2>
</ArrayType2Collection>
</Root>
Но как мне десериализовать это без родительских элементов ArrayType # Collection, окружающих элементы ArrayType #?
Будет ли это вообще разрешено сериализатором XML?