18 Stimmen

LINQ to Entities Group By-Ausdruck ergibt 'Anonymer Typ Projektionsinitialisierer sollte einfacher Name oder Member Access-Ausdruck sein'.

Ich erhalte den oben genannten Fehler mit diesem Ausdruck:

var aggregate = from t in entities.TraceLines
    join m in entities.MethodNames.Where("it.Name LIKE @searchTerm", new ObjectParameter("searchTerm", searchTerm)) on t.MethodHash equals m.MethodHash
    where (t.CallTypeId & (int)types) == t.CallTypeId && t.UserSessionProcessId == m_SessionId
    group t by m.Name into d                                                   
    select new
    {
        d.Key,                                     
        d.Sum(x => x.InclusiveDurationMilliseconds) // <- squigglies on this line
    };

Haben Sie eine Idee, was die Ursache für diesen Fehler ist?

44voto

Matthew Abbott Punkte 58885

Machen Sie etwas wie:

select new
{
    d.Key,
    Sum = d.Sum(x => x.InclusiveDurationMilliseconds)
};

Sie kann einen Eigenschaftsnamen von einer anderen Eigenschaft projizieren, aber nicht von einer Methode....

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X