Успях да го поправя, според коментара на @chridam. Благодаря отново!
Пиша решението по-долу, за всеки случай, ако някой се сблъска със същия проблем като мен.
Промених заявката си така, че станах:
var group = collection.Aggregate()
.Match(filter)
.Group(new BsonDocument { { "_id", new BsonDocument { { "month", new BsonDocument("$month", "$createddate.DateTime") }, { "day", new BsonDocument("$dayOfMonth", "$createddate.DateTime") }, { "year", new BsonDocument("$year", "$createddate.DateTime") } } }, { "count", new BsonDocument("$sum", 1) } })
.ToListAsync().Result;
Това ми даде сериализиран обект. След това го десериализирах в персонализирания клас, който имах:
var grouped = group.Select(g => BsonSerializer.Deserialize<RootObject>(g));
Ето персонализираната дефиниция на клас, която ще бъде малко излъскана:
public class Id
{
public int month { get; set; }
public int day { get; set; }
public int year { get; set; }
}
public class RootObject
{
public Id _id { get; set; }
public int count { get; set; }
}
Надявам се това да е полезно. Благодаря! :)