使用C#进行投影切片

时间:2015-01-09 10:11:44

标签: c# mongodb mongodb-query mongodb-.net-driver

有没有办法使用c#驱动程序在一个查询中实现切片和投影? 以下是我想用c#实现的目标,但即时通讯卡住了,任何人都可以帮我解决这个问题吗?

db.employee.find({"employeeId": "999"}, { "empActivity" : { "$slice": -1 } }, {"employeeId": 1, "empActivity.transId": 1, _id: 0})

注意:empActivity是一个包含嵌套文档的数组,上面的查询通过mongo shell完美地工作,但我无法在C#中找出它的等价物。

1 个答案:

答案 0 :(得分:1)

有一种方法可以使用C#驱动程序执行此操作。方法可以在构建器上进行控制,因此所有.Slice().Include()以及.Exclude()

var fields = Fields.Slice("empActivity", -1)
    .Include("employeeId", "empActivity.transId")
    .Exclude("_id");

var cursor = collection.Find(query).SetFields(fields);