我想使用 C# mongodb 驱动程序本机函数的聚合框架的 $map 和 $filter 选项。
有什么办法可以做到这一点吗?如果是的话,您可以提供一些代码示例吗?
我搜索了 Mongo DB 的官方文档,但没有找到任何结果。
以下代码位于 mongo shell 脚本中,我想转换为 C# mongodb 驱动程序。
var pipeline =
[
{
$match:{
ExId: {$in: [ObjectId('5d112f91cb865c02b0714d56'), ObjectId("5d168d2c305196e45e73f4a7")]}
}
},
{
$project:{
ExId: 1,
ArrayObject: {
$map:{
'input': '$ArrayObject',
'as': 'itemA',
'in':{
'Name': '$$itemA.Name',
'FilterHere': {
$filter: {
input: '$$itemA.FilterHere',
as: 'item',
cond: {
$eq: ['$$item.Sent', true]
}
}
}
}
}
}
}
}
]
db.getCollection('MyColection').aggregate(pipeline)
我期望将以下输出输出到 C# 对象中:
{
"_id" : ObjectId("5d444527cb865d28e8572d8d"),
"ExId" : ObjectId("5d112f91cb865c02b0714d56"),
"ArrayObject" : [
{
"Name" : 130774,
"FilterHere" : [
{
"Code" : 15900181,
"SentDate" : ISODate("2019-08-02T11:13:11.732Z"),
"Sent" : true
},
{
"Code" : 15900184,
"SentDate" : ISODate("2019-08-02T11:13:11.735Z"),
"Sent" : true
}
]
}
]
}
谢谢。
慕雪6442864
相关分类