У меня есть XML от стороннего программного обеспечения, которое мне нужно десериализовать, но у меня есть спецификация XML.C# Deserialize XML в список ChildClasses
В какой-то момент у меня есть узел, содержащий кучу разных узлов разных типов. Мне нужно десериализовать этот узел (транспортные средства) в качестве списка. Каждый из дочерних узлов один подкласс класса Vehicle
public List<Vehicle> Vehicles = new List<Vehicles>();
определение класса выглядит следующим образом
public class Vehicle
{
public string Vehicletype { get; set; }
public virtual bool Drive() { return true; }
}
public class Car:Vehicle
{
public int NumberOfDoors { get; set; }
public override bool Drive() { return false; }
}
public class Boat:Vehicle
{
public int NumberOfSeats { get; set; }
}
Определение XML выглядит следующим образом
<vehicles>
<car NumberOfDoors="4" />
<car NumberOfDoors="3" />
<boat NumberOfSeats="1024" />
<boat NumberOfSeats="20" />
<car NumberOfDoors="5" />
</vehicles>
На в какой-то момент мне нужно пройти через них и позволить им «Диск». У меня нет опыта с определениями XMLSchema. Теперь я использую VehicleType на фабрике и некоторые другие вещи. Это в основном становится беспорядком.
Мне нужно было бы предложить, чтобы Сериализатор сделал это вместо меня. Я сомневаюсь, что я первый, у кого есть эта проблема.
То, что мне было нужно – user853710