TResult có thể là một BsonDocument hoặc một lớp cụ thể đại diện cho kết quả của loại mục giảm.
Tôi nghĩ ví dụ của bạn, bạn có thể có một lớp chung như thế này:
public class SimpleReduceResult<T>
{
public string Id { get; set; }
public T value { get; set; }
}
Và tuyên bố tùy chọn của bạn sẽ là
var options = new MapReduceOptions<BsonDocument, SimpleReduceResult<int>>();