MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongoDB набор от резултати за Aggregate()

Вашият резултат е IEnumerable от BsonDocument, можете да ги сериализирате в C# обекти с помощта на BSonSerializer. И този кодов фрагмент просто ги записва във вашата конзола, но можете да видите, че сте въвели обекти

 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);
 }

И след това имайте клас, наречен Average, където името на свойството съвпада с имената в BSonDocument, ако искате да преименувате след това (тъй като _Id не е толкова хубаво в термините на c# по отношение на конвенциите за именуване), можете да добавите $project BsonDocument към вашия конвейер .

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

примерен $project (добавете това във вашия конвейер точно преди сортиране

 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. mongodb:как да отстранявате грешки в map/reduce на mongodb shell

  2. Търсете в множество колекции в MongoDB

  3. Грешка на Robo 3T:Мрежата е недостъпна

  4. Дали WiredTiger на MongoDb има проблем с производителността на преразпределението като MMAPv1

  5. Връзка към MongoDB ReplicaSet на Kubernetes