Tôi sẽ quay lại để xem lại điều này sau 4 năm bởi vì trong khi giả thuyết ban đầu của tôi đã hoạt động, nó hoạt động sai cách, đó là nó kéo lại tất cả các bản ghi từ Mongo và sau đó lọc chúng trong bộ nhớ và vấn đề phức tạp là nó đang thực hiện một cuộc gọi đồng bộ vào cơ sở dữ liệu luôn là một ý tưởng tồi.
Điều kỳ diệu xảy ra trong phương pháp mở rộng mở rộng của LinqKit
Điều đó làm phẳng cây biểu thức gọi thành một thứ mà trình điều khiển Mongo có thể hiểu và do đó hành động.
.Where(predicate.Expand())