Ich möchte LINQ verwenden, um eine eindeutige Liste von Zeichenfolgen auszuwählen, die als Liste in einem Objekt gespeichert sind. Dieses Objekt wird selbst in einer Liste in einem anderen Objekt gespeichert. Es ist schwer zu erklären, hier ein Beispiel:Verwenden Sie LINQ, um verschiedene Eigenschaften in Listen der Listen auszuwählen
public class Master
{
public List<DataCollection> DateCollection { get; set; }
public Master() { this.DateCollection = new List<DataCollection>(); }
}
public class DataCollection
{
public List<Data> Data { get; set; }
public DataCollection() { this.Data = new List<Data>(); }
}
public class Data
{
public string Value{ get; set; }
public Data() { }
}
der Master-Klasse verwenden, habe ich eine Liste von eindeutigen Wert Strings in der Datenklasse erhalten möchten. Ich habe folgendes versucht:
List<string> unique = master.Select(x => x.DataCollection.Select(y => y.Value)).Distinct().ToList();
Kann mir jemand zeigen, wie es gemacht wird?
Sie will also die deutliche 'Data' alles zusammen Ihr' DataCollection' Daten geheftet? – ryanyuyu
machen distinct gehen in innere Klammern wie master.select (x => x.DataCollection.Select (y => y.value) .Distinct()). Ihr Metohd bekommt jetzt deutliche Masterwerte und keine ausgeprägten inneren Werte – maximdumont