Sử dụng quá tải khác của Aggregate có tham số AggregateArgs và cung cấp cho bạn nhiều quyền kiểm soát hơn đối với hoạt động, bao gồm cả cài đặt AllowDiskUse:
var pipeline = new BsonDocument[0]; // replace with a real pipeline
var aggregateArgs = new AggregateArgs { AllowDiskUse = true, Pipeline = pipeline };
var aggregateResult = collection.Aggregate(aggregateArgs);
var users = aggregateResult.Select(x =>
new User
{
Influence = x["Influence"].ToDouble(),
User = new SMBUser(x["user"].AsBsonDocument)
}).ToList();
Lưu ý rằng kiểu trả về của quá tải này của Aggregate là IEnumerable
Chỉ cần nói rõ, Chọn đang được thực thi phía máy khách. Bạn có thể sắp xếp nó để các tài liệu đi ra từ đường ống tổng hợp của bạn có thể được trực tiếp deserialized vào các phiên bản của một trong các lớp của bạn.