Casablanca: LINQ

Beitrag lesen

Hallo Jörgen,

vielen Dank ür die ausführliche Erläuterung.
Nach deiner Erläuterung sieht die Abfrage nun so aus:

  
var values = query.SelectMany(n => n).GroupBy(gr => new { gr.Id, MyDate = (DateTime)EntityFunctions.TruncateTime(gr.Date), gr.Value }).Select(gr => new { gr.Key.Id, gr.Key.MyDate, MyValue = gr.Sum(g => g.Value) });  

Bei der Anwendung von "ToList()" auf das Ende der Anweisung wird folgender Fehler ausgestoßen:

"values.ToList()" hat eine Ausnahme vom Typ "System.NotSupportedException" verursacht.

Die Anweisung zur Laufzeit hat folgende Gestaltung:

values = {System.Linq.Enumerable.WhereSelectEnumerableIterator<System.Linq.IGrouping<<>f__AnonymousType9
<int,System.DateTime,double>,<>f__AnonymousType9<int,System.DateTime,double>>,<>f__AnonymousType9<int,System.DateTime,double>>}

Die vorherige LINQ-Anweisung, von der ich meine Liste (query) erhalte sieht so aus:

  
var query = (from myId in Ids  
             select (from myTable in Table.Where(d => d.Id == myId)  
	     where (myTable.Date.Year == MyYear && myTable.Date.Month == MyMonth)  
	     orderby myTable.Date  
	     select new { myTable.Id, myTable.Date, myTable.Value }) into myQuery  
	     where myQuery.Any()  
	     select myQuery.ToList()).ToList();  

Meine Methode gibt ein "IEnumerable<object>" zurück. Die Fehler tauchen momenatn zur Laufzeit auf.

Gruß