Ich Deserialisierung eine XML-Datei zu und Objektmodell. Obwohl dies nicht das tatsächliche Modell ist, ist unten in der Struktur ähnlich, was ich habe.Get Distinct Liste von Werten aus verschachtelten Objekt
[Serializable()]
[System.Xml.Serialization.XmlRoot("AutoEnvelope")]
public class AutoBody
{
[XmlArray("AutoBody")]
[XmlArrayItem("Vehicles", typeof(Vehicles))]
public Vehicles[] Vehicles { get; set; }
}
[Serializable()]
public class Vehicles
{
[XmlElement("SelectedCar", typeof(SelectedCar))]
public SelectedCar SelectedCar { get; set; }
[XmlElement("OfferedVehicles", typeof(OfferedVehicles))]
public OfferedVehicles OfferedVehicles { get; set; }
}
[Serializable()]
public class SelectedCar
{
[System.Xml.Serialization.XmlElement("Model")]
public string Model { get; set; }
[System.Xml.Serialization.XmlElement("NumTires")]
public int NumTires { get; set; }
[System.Xml.Serialization.XmlElement("Color")]
public string Color { get; set; }
}
Ich versuche, eine eindeutige Liste der SelectedCar.Color-Werte zu erhalten und war nicht erfolgreich. Nehmen wir an, dass ich die Daten in einer Variablen am Speicherung Karosserie- genannt, ich habe versucht, Variationen der folgenden Möglichkeiten:
List<char> uniqueColors = autoBody.SelectMany(auto => auto.SelectedCar.Color).Distinct().ToList();
ich eindeutig etwas falsch bin, aber ich bin nicht klar, wie man das erreichen, was ich suche.
Vielen Dank für die schnelle (und genaue) Antwort. Das hat perfekt funktioniert! –