使用 C# Fluent Aggregation Framework 的 MongoDB 异常

Posted

技术标签:

【中文标题】使用 C# Fluent Aggregation Framework 的 MongoDB 异常【英文标题】:MongoDB exception using C# Fluent Aggregation Framework 【发布时间】:2017-01-08 19:36:33 【问题描述】:

我正在尝试使用 C# 驱动程序中的 MongoDB 流式聚合语法编写一个非常简单的分组查询。

我正在按作者对文档进行分组并返回每个作者的计数。我不需要返回作者姓名,只需要返回计数。以下代码编译,但是当我执行它时,我得到了这个异常:

命令聚合失败:组聚合字段名称“$sum”不能是运算符名称。

var query = Collection<TestFile>()
    .Aggregate()
    .Group(
        t => t.AuthorName,
        grp => grp.Count()
     )
     .ToEnumerable();

MongoDB 版本:3.2.4

MongoDB C# 驱动程序版本:2.2.3.3

【问题讨论】:

【参考方案1】:

像这样尝试(虽然尚未测试)

var query = Collection<TestFile>()
    .Aggregate()
    .Group(
        t => t.AuthorName,
        grp => new  Count = grp.Count() 
     )
     .ToEnumerable();

【讨论】:

以上是关于使用 C# Fluent Aggregation Framework 的 MongoDB 异常的主要内容,如果未能解决你的问题,请参考以下文章

是否有使用 Fluent API 的 C# EF6 DbContext 生成器?

使用相同的 SQL 生成输出将 T-SQL 转换为 Fluent Linq C#

遍历 Linq fluent API 方法(C#)[关闭]

如果值为 X 或值为 Y,C# Fluent 验证

ShouldBeEquivalentTo 的 C# Fluent Assertions 全局选项

问题 Fluent Nhibernate Mapping MySQL Time(6) to C# DateTime