Tôi không biết liên kết MongoDB C # hoạt động như thế nào, nhưng hãy mô tả cách nó thường hoạt động:
Khi sử dụng IQueryable
một cây biểu thức được xây dựng, sau đó được dịch sang một định dạng mà cơ sở dữ liệu có thể hiểu và sau đó được thực thi trong máy chủ cơ sở dữ liệu.
Điều này thường có một chi phí nhỏ (xây dựng cây biểu thức và dịch nó) so với việc viết trực tiếp các truy vấn ở định dạng mà cơ sở dữ liệu hiểu được.
Với IEnumerable
đại biểu được sử dụng, thay vì biểu thức. Nó cần phải lặp lại toàn bộ tập dữ liệu và sau đó lọc bằng Linq-To-Objects. Điều này chậm hơn nhiều.