miei dati è come sotto in due tabelleLINQ to dizionario con chiave e una lista
Master Columns
ID MyDateTime
1 07 Sept
2 08 Sept
colonna MyDateTime al precedente ha indice univoco
Detail Columns
ID Data1 Data2 Data3
1 a b c
1 x y z
1 f g h
2 a b c
voglio popolare questo in un dizionario. Ho provato
Dictionary<DateTime, List<Detail>> result = (
from master in db.master
from details in db.detail
where (master.ID == detail.ID)
select new
{
master.MyDateTime,
details
}).Distinct().ToDictionary(key => key.MyDateTime, value => new List<Detail> { value.details });
mi aspetto due file nel dizionario
1, List of 3 rows as details
2, List of 1 row as details
ho un errore in cui si lamenta la chiave del dizionario è entrato due volte. La chiave sarebbe il datetime che è unica nel master
Dove utilizzare il dizionario e dove LookUp jon? –
@EhsanSajjad: utilizzare un dizionario per una mappatura "chiave per valore singolo" e una ricerca per mappatura "chiave su più valori" (quando si esegue una query, la ricerca è immutabile, quindi non è possibile utilizzarla quando si è mutando la collezione). –