2009-08-24 11 views
0

Für meine Repository mit dem Entity Framework verwende ich die folgende Methode, um eine IList zurückzugeben.Halten Sie mein Repository generisch mit createquery

Der Ausdruck Parameter ermöglicht mir, das Ergebnis zu ändern, aber das ist nicht zu meinen Erwartungen. Seit createquery wird zuerst ausgewertet und danach wird meine where angewendet. Ich benutze dies mit Tabellen mit mehr als 2 Mil. Aufzeichnungen.

Hat jemand eine Lösung, wie man die Methode generisch hält, aber mit der Fähigkeit, das Ergebnis zu kontrollieren, ohne zuerst alle Datensätze zu laden?

Antwort

2

Sie müssen den Typ Ihrer Argumentation zu einer ändern, die in SQL konvertiert werden können:

public virtual IList<TEntity> ToList(Expression<Func<TEntity, bool>> expression) 

Notiere die Expression.

+0

Hallo Craig, es funktioniert! Vielen Dank! – madC