2017-12-22 15 views
1

mit möchte ich die Produktion und Gruppierung nach Standort-ID und sdmaterial zählen, aber seine Fehlerhow und Gruppe zählen von Linq

Prodution = productionLala.Where(n => n.Date >= x.StartDate && n.Date < x.EndDate) 
          .GroupBy(n => n.From_Location_ID && n.SDMaterial_Group) 
          .Select(n.production).Count(); 

kann mir jemand helfen? :) thx

+0

Was ist 'Produktion'? Was ist 'n.produktion'? Was ist die erwartete Ausgabe? Bitte geben Sie ein Beispiel - es wird leichter zu verstehen sein –

+0

Auch was ist der Zweck des Zählens? Möchten Sie wissen, wie viele Gruppen Sie haben? Wenn ja, warum zuerst "n.production" auswählen - es ist immer noch ein Element pro Gruppe? Hast du vielleicht "Summe" gemeint? –

Antwort

1

versuchen, dies wird dies

var Prodution = productionLala.Where(n => n.Date >= x.StartDate && n.Date < 
x.EndDate).GroupBy(x => new{ x.From_Location_ID , x.SDMaterial_Group}) 
.Select(n.production).count(); 
+2

Wenn Sie nicht wissen, was falsch ist, warum post antworten? –

+0

@Gilad Green- warum nicht? –

+0

Zuerst, weil Ihr aktueller Code nicht kompiliert, Sie nicht wissen, was "Produktion" ist und Sie nicht wissen, was die erwartete Ausgabe ist. –

0

Möchten Sie Count für pro From_Location_ID und SDMaterial_Group abrufen Werk sein kann.

var groupCounts = productionLala.Where(n => n.Date >= x.StartDate && n.Date < x.EndDate) 
    .GroupBy(x => new 
    { 
     x.From_Location_ID, 
     x.SDMaterial_Group 
    }) 
    .Select(x => new 
    { 
     From_Location_ID = x.Key.From_Location_ID, 
     SDMaterial_Group = x.Key.SDMaterial_Group, 
     Count = x.Count() 
    });