Ich versuche zum ersten Mal Mongo und ein Problem habe, wo ich:MongoDB C# 2.0 Driver Multiple Wickelt
public class A
{
public int ID {get;set;}
.
.
.
public List<B> Bs { get; set; }
}
public class B
{
public int ID { get; set; }
.
.
.
public List<C> Cs { get; set; }
}
public class C
{
public string Name { get; set; }
public double Amount { get; set; }
}
und ich möchte die Top-10-C ist mit dem höchsten zurück Summed Beträge, wenn Ich gruppiere C mit Namen. So könnte zum Beispiel John Smith in einem einzigen A in mehreren B sein und auch in B unter mehreren verschiedenen A des
könnte ich kann dies erreichen innerhalb der Mongo Shell durch Ausführen von:
db.As.aggregate(
{$unwind: "$Bs"},
{$unwind: "$Bs.Cs"},
{$group: { _id: "$Bs.Cs.Name", total: {$sum: "$Bs.Cs.Amount"}}},
{$sort: {total: -1}},
{$limit: 10}
);
Aber ich kann nicht herausfinden, wie dies in meiner C# -App mit dem MongoDB 2.0-Treiber zu tun ist. Könnte mir jemand in die richtige Richtung zeigen?
Auch ich bin ein SQL Server-Typ und bin sehr an die Verwendung von Sprocs gewöhnt, sollte ich dieses bestimmte Aggregat in einem gespeicherten Javascript auf dem Server und nur aus meiner C# -App aufrufen? Wenn ja, wie rufen Sie gespeichertes Javascript mit dem 2.0 Treiber auf?
Danke!
Vielen Dank! Das hat den Trick gemacht! – eraly