2010-03-10 2 views
2

У меня есть документ XML, который выглядит следующим образом:десериализации унаследовал типы без явного атрибута XmlArrayItem

<MyEntity> 
    <Vehicles> 
     <Car /> 
     <Truck /> 
    </Vehicles> 
</MyEntity> 

Я хочу deserialise его в следующей структуре:

public class MyEntity 
{ 
    public Vehicle[] Vehicles { get; set; } 
} 

public class Vehicle {} 
public class Car : Vehicle {} 
public class Truck : Vehicle {} 

Можно ли это сделать без необходимости украшать свойство MyEntity.Vehicles атрибутом XmlArrayItem для каждого типа транспортного средства? Я могу получить новые типы транспортных средств, о которых я не знаю во время компиляции, но их можно обнаружить во время выполнения.

ответ

0

Единственный способ, которым я могу думать, помимо добавления атрибутов, - это реализовать IXmlSerializer в MyEntity и обработать его вручную. Конечно, вам также понадобится регистрация регистраторов для разных типов транспортных средств.

Смежные вопросы