【发布时间】:2016-05-24 16:12:30
【问题描述】:
我遇到了一个问题,我希望在服务器和客户端之间有一个中间步骤。所以我不想在服务器上序列化结果(例如query.ToList)。因此,我希望查询结果为RawBsonDocument,所以我只有原始字节,而不是将数据序列化为BsonDocument。
我目前正在使用 Mongo C# 驱动程序,但我在创建查询时无法将结果作为原始字节获得。
示例 1 (RawBsonDocument - OK)
IAggregateFluent<RawBsonDocument> query = collection.Aggregate()
.Sort(Builders<BsonDocument>.Sort.Descending("StartTime"))
.Match(categoryFilter)
示例 2(RawBsonDocument - 失败)
IAggregateFluent<RawBsonDocument> query = collection.Aggregate()
.Sort(Builders<BsonDocument>.Sort.Descending("StartTime"))
.Match(categoryFilter)
.Project(new BsonDocument(new Dictionary<string, object>
{
{"Measurement.Time", "$Entities._time"},
{"Measurement.Value", "$Entities.mes"}
}))
在 示例 1 中,我可以在 RawBsonDocument 中得到结果。当我开始应用像 Group 或 Project 这样的运算符时,它会迫使我得到 BsonDocument 的结果(示例 2)。我怎样才能得到RawBsonDocument 或只是字节的结果?
【问题讨论】:
标签: c# mongodb mongodb-query aggregation-framework