Murphy9904 Geschrieben 8. Dezember 2011 Geschrieben 8. Dezember 2011 Hi Leute, ich hab folgenden Sql Query: select * from [Bla].[dbo].[InventoryDeviceUser] where [DeviceUserID] in ( select MAX([DeviceUserID]) as ID from [Bla].[dbo].[InventoryDeviceUser] group by DeviceID ) und will den in Linq schreiben. bekomm das aber irgendwie nicht hin. soetwas wie Max gibts in Linq nicht.. (Die abfrage soll bewirken dass ich auf die DeviceUserID gruppiere und immer den neuesten eintrag will.) Wär cool wenn jemand helfen könnte.. Danke schonmal Murphy Zitieren
a3quit4s Geschrieben 8. Dezember 2011 Geschrieben 8. Dezember 2011 (bearbeitet) Wie ist denn dein Ansatz in LINQ? soetwas wie Max gibts in Linq nicht.. Wohl aber bei Enumerables: MSDN Bearbeitet 8. Dezember 2011 von a3quit4s Zitieren
Murphy9904 Geschrieben 8. Dezember 2011 Autor Geschrieben 8. Dezember 2011 naja im prinzip is mein Ansatz so wie in SQL nur dass ich dann hängen bleib from d in context.InventoryDeviceUsers where (from m in context.InventoryDeviceUsers select m.DeviceID /*Game Over */ ).Contains(d.DeviceID);[/code] Okay, und wie verwende ich das dann in diesem fall? Zitieren
SilentDemise Geschrieben 8. Dezember 2011 Geschrieben 8. Dezember 2011 schau dir mal das Let keyword an. Zitieren
Murphy9904 Geschrieben 9. Dezember 2011 Autor Geschrieben 9. Dezember 2011 Danke, ich hab jetzt schon ne lösung gefunden: var lastDeviceUserIDs = from entry in context.InventoryDeviceUsers group entry by entry.DeviceID into g select g.Max(d => d.DeviceUserID); gcOnlineScanners.ItemsSource = from idu in context.InventoryDeviceUsers where lastDeviceUserIDs.Contains(idu.DeviceUserID) select idu; klappt so wunderbar.. trotzdem danke an euch Murphy Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.