Váš výsledek je IEnumerable BsonDocument, můžete je serializovat na objekty C# pomocí BsonSerializer. A tento fragment kódu je pouze zapíše do vaší konzoly, ale můžete vidět, že jste zadali objekty
List<Average> returnValue = new List<Average>();
returnValue.AddRange(documents.Select(x=> BsonSerializer.Deserialize<Average>(x)));
foreach (var obj in returnValue)
{
Console.WriteLine("Species {0}, avg weight: {1}",returnValue._Id,returnValue.AvgWeight);
}
A pak mít třídu nazvanou Average, kde název vlastnosti odpovídá jménům v BsonDocument, pokud pak chcete přejmenovat (protože _Id není tak hezké v c#, pokud jde o konvence pojmenování), můžete do svého kanálu přidat $project BsonDocument .
public class Average
{
public string _Id { get; set; }
public Double AvgWeight {get; set; }
}
$project sample (přidejte to do svého kanálu těsně před řazením
var project = new BsonDocument
{
{
"$project",
new BsonDocument
{
{"_id", 0},
{"Species","$_id"},
{"AvgWeight", "$AvgWeight"},
}
}
};