1

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

4

1 に答える 1

1

試してみてください(まだテストされていません)

var query = Collection<TestFile>()
    .Aggregate()
    .Group(
        t => t.AuthorName,
        grp => new { Count = grp.Count() }
     )
     .ToEnumerable();
于 2016-09-01T05:15:40.390 に答える