sql >> Databasteknik >  >> NoSQL >> MongoDB

mongodb c# hur man arbetar med BSON-dokument

Det finns några sätt, men här är ett:

 // build some test data
 BsonArray dataFields = new BsonArray { new BsonDocument { 
     { "ID" , ObjectId.GenerateNewId()}, { "NAME", "ID"}, {"TYPE", "Text"} } };
 BsonDocument nested = new BsonDocument {
     { "name", "John Doe" },
     { "fields", dataFields },
     { "address", new BsonDocument {
             { "street", "123 Main St." },
             { "city", "Madison" },
             { "state", "WI" },
             { "zip", 53711}
         }
     }
 };
 // grab the address from the document,
 // subdocs as a BsonDocument
 var address = nested["address"].AsBsonDocument;
 Console.WriteLine(address["city"].AsString); 
 // or, jump straight to the value ...
 Console.WriteLine(nested["address"]["city"].AsString);
 // loop through the fields array
 var allFields = nested["fields"].AsBsonArray ;
 foreach (var fields in allFields)
 {
     // grab a few of the fields:
     Console.WriteLine("Name: {0}, Type: {1}", 
         fields["NAME"].AsString, fields["TYPE"].AsString);
 }

Du kan ofta använda strängindexeraren ["name-of-property"] för att gå igenom fälten och underdokumentfälten. Använd sedan AsXYZ egenskaper för att casta fältvärdet till en viss typ som visas ovan.




  1. Behöver jag stänga en mongoose-anslutning manuellt?

  2. Mongoose - Hur grupperar man efter och befolkar?

  3. Dela sockets över separata nodeJS-instanser

  4. MongoDB - filstorleken är enorm och växer