Desserialização XML e itens de matriz solta
Então, estou trabalhando com alguns arquivos XML que, na minha opinião, provavelmente estão mal formados, e estou tentando descobrir como e se posso usar o XmlSerializer para desserializar esse XML em um objeto de negócios lógico. Digamos que eu tenho o seguinte arquivo XML:
<Root>
<ArrayType1 Name="Bob"/>
<ArrayType1 Name="Jim"/>
<ArrayType2 Name="Frank">
<SubItem Value="4"/>
</ArrayType2>
<ArrayType2 Name="Jimbo">
<SubItem Value="2"/>
</ArrayType2>
</Root>
Agora eu gostaria de criar uma classe que possua esses três tipos, Root, ArrayType1 e ArrayType2, mas gostaria de obter duas listas no Root, uma contendo uma coleção de itens ArrayType1 e uma contendo uma coleção de itens ArrayType2 , mas parece que esses itens precisam ter algum tipo de raiz. Por exemplo, eu sei desserializar o seguinte muito bem:
<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>
Mas como eu desserializaria isso sem os elementos pai ArrayType # Collection ao redor dos elementos ArrayType
O XML Serializer ainda permite isso?