Jeg vender tilbage for at gense dette efter 4 år, for mens min oprindelige formodning virkede, virkede det på den forkerte måde, hvilket var, at det trak alle posterne tilbage fra Mongo og derefter filtrerede dem i hukommelsen og for at sammensætte sagerne lavede det et synkront opkald ind i databasen, hvilket altid er en dårlig idé.
Magien sker i LinqKits udvidede udvidelsesmetode
Det flader invokationsudtrykstræet til noget, som Mongo-chaufføren kan forstå og dermed handle ud fra.
.Where(predicate.Expand())