Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在c中实现mongodb聚合管道#_C#_.net_Mongodb_Aggregation Framework - Fatal编程技术网

C# 在c中实现mongodb聚合管道#

C# 在c中实现mongodb聚合管道#,c#,.net,mongodb,aggregation-framework,C#,.net,Mongodb,Aggregation Framework,我有包含八个步骤的mongdb“聚合查询”,可以在控制台和RoboMongo中成功运行 db.getCollection("...").aggregate([ {$match: { ... } }, {$unwind: ... }, {$project: { ... } }, {$group: { ... } }, {$project: { ... } }, {$unwind: ... }, {$group: { ... } } ]) 现

我有包含八个步骤的mongdb“聚合查询”,可以在控制台和RoboMongo中成功运行

db.getCollection("...").aggregate([
    {$match: { ... } },
    {$unwind: ... },
    {$project: { ... } },
    {$group: { ... } },
    {$project: { ... } },
    {$unwind: ... },
    {$group: { ... } }
])
现在是在我的asp.net应用程序中运行这项功能的时候了,但是我在c#中的实现非常困难

新的聚合框架看起来很有希望,但我不想通过管道定义每一种中间类型,而且就我所见,没有它就无法工作

所以问题是:
是否可以在不定义每个中间类型的情况下使用聚合框架?

其次,
实现现有查询的最佳方式是什么?


我看到该框架包含多种定义聚合管道的方法,如不同的
PipelineDefinition
实现和扩展方法,但我发现很少有文档和使用这些方法

显然,C#driver的下一版本2.1将添加对聚合的更好支持,请参阅

2.1的完整更改列表位于


我建议您在添加用例时,C#驱动程序人员的响应能力非常强。

显然,C#驱动程序的下一个版本2.1将添加对聚合的更好支持,请参阅

2.1的完整更改列表位于


我建议将您的用例添加到,C#driver人员的响应速度非常快。

C#driver所要做的就是将您的C#查询编译到前面提到的MongoDB查询中。为什么不直接将此查询传递给MongoDB?这会省去很多焦虑,也会简单得多。是的,我自己也在考虑这个问题。。但是我现在有一些东西可以做我想做的,但是它涉及到大量的中间类型。就可维护性而言,添加一个额外的C层,只是为了在C中添加一些东西,可能不是最好的方法。如果他们改变C#driver,很可能会突然改变行为或运行速度慢100倍,所以无论如何,这样做有点像彩票。不过,让我失望的是,新的聚合框架如此难以使用。。。看起来是
$unwind
命令触发了一切。删除它,匿名类型的一切都很正常……也许在MongoDB Jira门户上提交一个问题?C#driver的人实际上非常擅长将反馈纳入下一个版本。请参阅。C#驱动程序所要做的就是将C#查询编译到前面提到的MongoDB查询中。为什么不直接将此查询传递给MongoDB?这会省去很多焦虑,也会简单得多。是的,我自己也在考虑这个问题。。但是我现在有一些东西可以做我想做的,但是它涉及到大量的中间类型。就可维护性而言,添加一个额外的C层,只是为了在C中添加一些东西,可能不是最好的方法。如果他们改变C#driver,很可能会突然改变行为或运行速度慢100倍,所以无论如何,这样做有点像彩票。不过,让我失望的是,新的聚合框架如此难以使用。。。看起来是
$unwind
命令触发了一切。删除它,匿名类型的一切都很正常……也许在MongoDB Jira门户上提交一个问题?C#driver的人实际上非常擅长将反馈纳入下一个版本。看见