LINQ - zapytanie wywołuje wyjątek o przekroczenie indeksu

0

Cześć, zrobiłem dość proste zapytanie LINQ które wywołuje wyjątek i nie wiem dlaczego:

"System.ArgumentOutOfRangeException: „Indeks był spoza zakresu. Musi mieć wartość nieujemną i mniejszą niż rozmiar kolekcji.
Nazwa parametru: index”""

                var data = (from Magazyn in db.Magazyn
                               where Magazyn.Kontrahent.Equals(kontrahent)
                               select Magazyn);

                    var result = from item in data
                                 group item by item.Data.Value.Year into grp
                                 let sumC = data.Where(x => x.Data.Value.Year == grp.Key).Sum(x => x.Waga)
                                 orderby grp.Key descending
                                 select new DataWithSumCalosc
                                 {
                                     data = grp.Key,
                                     sumDos = sumC,
                                 };

                    dataGridView1.DataSource = result.ToList();
1
var data = (from Magazyn in db.Magazyn
                               where Magazyn.Kontrahent.Equals(kontrahent)
                               select new { Magazyn.Data.Value.Year,Magazyn.Waga });
dataGridView1.DataSource = data.ToList();

i zobacz czy nie ma jakichś dziwnych wartości.

0

okej problem rozwiązany dziękuję za naprowadzenie !

0

Tak a propos masz przekombinowanego linq

var data
=
  from Magazyn in db.Magazyn
  where Magazyn.Kontrahent.Equals(kontrahent)
  select new { Magazyn.Data.Value.Year, Magazyn.Waga });
  group data by data.name into grp
  orderby grp.Key descending
  select new
  {
    name = grp.Key,
    sum = grp.Aggregate(0.0,(sum,curr) => sum+curr.Waga)
  }
;

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