MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Zestaw wyników MongoDB dla Aggregate()

Twój wynik to IEnumerable z BsonDocument, możesz je serializować do obiektów C# przy użyciu BsonSerializer. Ten fragment kodu po prostu zapisuje je w konsoli, ale widać, że wpisałeś obiekty

 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 potem miej klasę o nazwie Average, gdzie nazwa właściwości pasuje do nazw w BsonDocument, jeśli chcesz zmienić nazwę wtedy (ponieważ _Id nie jest zbyt ładny w terminach c# dotyczących konwencji nazewnictwa), możesz dodać $project BsonDocument do swojego potoku .

 public class Average
 {
      public string _Id { get; set; }
      public Double AvgWeight {get; set; }
 }

$project sample (dodaj to do potoku tuż przed sortowaniem

 var project = new BsonDocument 
            { 
                { 
                    "$project", 
                    new BsonDocument 
                        { 
                            {"_id", 0}, 
                            {"Species","$_id"},
                            {"AvgWeight", "$AvgWeight"}, 
                        } 
                } 
            };



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Uwierzytelnianie Mongo w Dockerze

  2. jak pokazać 0 dla tygodnia, gdy żaden rekord nie pasuje do tego tygodnia w zapytaniu $tydzień mongodb

  3. Zapytanie o wyrażenie regularne Node.js i Mongoose w wielu polach

  4. Jak odwołać się do innego schematu w moim schemacie Mongoose?

  5. Wyświetl dane na stronie internetowej pobranej z mongodb za pomocą node.js