-
Type:
New Feature
-
Status: Closed
-
Priority:
Major - P3
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 2.0
-
Component/s: None
-
Labels:None
-
Sprint:C# Sprint 14
Currently, the only 2 accumulators we do not support are $push and $addToSet.
We could implement these in a simple manner with the following syntax.
For $push:
{ $group: {_id: "$State", Cities: { $push: "$City" } } }
|
.Group(x => x.State, g => new
|
{
|
_id = g.Key,
|
Cities = new List<string>(g.Select(x => x.City))
|
}
|
And for $addToSet:
{ $group: {_id: "$State", Cities: { $addToSet: "$City" } } }
|
.Group(x => x.State, g => new
|
{
|
_id = g.Key,
|
Cities = new HashSet<string>(g.Select(x => x.City))
|
}
|