Grupowanie wyników

0

Cześć

Mam zapytanie które zwraca dane z bazy

		var res = _db.DataFromSensor.Where(p=>(p.recTime >= startDate & p.recTime <= endDate))
                        .Select(x=> new {
                            model = x.Model.name,
                            val1 = x.value1,
                            val1 = x.value2
                        })
                        // .AsEnumerable()
                        // .GroupBy(x=>x.model)
                        .ToList();

W wyniku dostaję tablicę:

[
0: {model: "CRW", val1: 7.8, val2: 2.8}
1: {model: "CRW", val1: 8.1, val2: 2.9}
2: {model: "CRX", val1: 8.1, val2: 2.7}
3: {model: "CRX", val1: 8.3, val2: 2.7}
]

Jak pogrupować wynik i zwrócić w postaci:

model: "CRW"
Lista wyników jako tablica
model: "CRX"
Lista wyników jako tablica

Po klauzurze GroupBy() nie mam dostępu do nazw tego co jest w Select()
Po stronie klienta przydały by się już zagregowane dane, znacznie ułatwiło by mi to przetwarzanie ich.

0

Na przykład tak:

var res = _db.DataFromSensor.Where(p=>(p.recTime >= startDate & p.recTime <= endDate))
                        .Select(x=> new {
                            model = x.Model.name,
                            val1 = x.value1,
                            val1 = x.value2
                        })
                        .ToLookup(x => x.Model.name)

ILookup jest podobny do IDictionary, tyle że może przechowywać wiele wartości dla jednego klucza.

1 użytkowników online, w tym zalogowanych: 0, gości: 1