Desidero utilizzare LINQ per selezionare un elenco univoco di stringhe, memorizzato come Elenco, all'interno di un oggetto. Questo oggetto è esso stesso memorizzato in una lista all'interno di un altro oggetto. E 'difficile da spiegare, ecco un esempio:Utilizzare LINQ per selezionare proprietà distinte in Elenchi di elenchi
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() { }
}
Uso della classe Maestro, voglio ottenere una lista di stringhe valore unico nella classe di dati. Ho provato il seguente:
List<string> unique = master.Select(x => x.DataCollection.Select(y => y.Value)).Distinct().ToList();
Qualcuno può mostrarmi come è fatto?
Così si desidera che il distinto 'data' di tutti i vostri dati di' DataCollection' spillati insieme? – ryanyuyu
effettua distinti passaggi in paraste interne come master.select (x => x.DataCollection.Select (y => y.value) .Distinct()). Il tuo metohd in questo momento ottiene un maestro distinto non valori interiori distinti – maximdumont