Save BSON Document In MongoDB Using C# Driver


MongoDB uses BSON as the data storage and network transfer format for "documents". BSON is a binary-encoded serialization of JSON-like documents. BSON is designed to be lightweight, traversable, and efficient. MongoDB is representative of NoSQL databases. It is a document-oriented database, which means that data will be stored in documents in BSON format.

Setting up MongoDB in your system

First, you have to download the MongoDB Zip file from the following site: and then install MongoDB in your system. If you don't know about installing then use the following link:
Install C# driver in your system
The C# driver consists of two libraries: the BSON Library and the C# driver. The BSON library can be used independently of the C# Driver if desired. The C# Driver requires the BSON library. First, you have to download the C# driver at the link: Then download the latest version of the C# driver in msi format. Then install the C# driver into your system. After installing the C# driver, store it in your system in this path: C:\Program Files (x86)\MongoDB\CSharpDriver 1.8.2. You have seen two DLL files, the first is MongoDB.Bson.dll and the second is MongoDB.Driver.dll.These files are used in connecting to MongoDB with C#.Net.
Run  MongoDB Server
Go to the "C:\mongodb\bin" address in your system and then run mongo.exe and mongod.exe as in the following figure:
Finally, your MongoDB server will run in your system. See the following.
mongo.exe server
mongod.exe server
Open Microsoft Visual Studio
I have learned about Visual Studio 2012. But you need it to work with any Visual Studio version. First, go to "File" -> "New" -> "Project..." and then create a new console application and provide any name.
Add reference file
After creating a console application you need to add two references from the C# driver. See that in the following.
  • Go to Solution Explorer then right-click on the application name, then click "Add Reference".
  • Select "Browse" then click on "Browse".
  • After clicking on "Browser" then select DLL files then click on "Add" as in the following figure.
  • Select some files and then click "OK".
Connect to MongoDB with C# and then save BSON document in MongoDB database
The following is the Console Application code in the C# language .

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5. using System.Threading.Tasks;  
  6. using System.Xml.Linq;  
  7. using MongoDB.Bson; // Add BSON Library file  
  8. using MongoDB.Driver; // Add Driver Library file  
  10. namespace ConsoleApplication1 {  
  11.     classProgram {  
  12.         staticvoid Main(string[] args) {  
  14.             MongoServer mongo = MongoServer.Create(); //Create object of MongoDB server  
  15.             mongo.Connect(); // call to connect MongoDb server  
  17.             Console.WriteLine("Connect to MongoDB Server");  
  18.             Console.WriteLine();  
  20.             var db = mongo.GetDatabase("My_Database"); // Call to "My_ Collection" database which create in MongoDB  
  22.             using(mongo.RequestStart(db)) // call to request send to MongoDB  
  23.             {  
  24.                 var collection = db.GetCollection < BsonDocument > ("My_Collection");  
  25.                 /* call to MongoDB which create collection in "My_Database"*/  
  26.                 BsonDocument book = newBsonDocument() // Create BSON document which document name is "Book"  
  27.                     .Add("_id", BsonValue.Create(BsonType.ObjectId)) // Create "Object _id"   
  28.                     .Add("author""pradhan"// Add data in "book" document (key and value format)  
  29.                     .Add(" title""My exprience");  
  31.                 collection.Insert(book); /* Insert BSON document type data (name is "book") in collection                                                                                                                                    ("My_collection") */  
  32.                 var query = newQueryDocument("author""pradhan"); /*Create Query for view data, which save in collection                                                                                                                                                      ("My_Collection"), in MongoDB database ("My_Databse") */  
  33.                 foreach(BsonDocument item in collection.Find(query)) // create foreach loop for select item in collection  
  34.                 {  
  35.                     Console.WriteLine("Key           Value ");  
  36.                     Console.WriteLine();  
  37.                     foreach(BsonElement element in item.Elements) // create foreach loop for select element in  item  
  38.                     {  
  39.                         Console.WriteLine("{0}            {1}", element.Name, element.Value); // print element name and value  
  40.                     }  
  41.                 }  
  43.                 Console.WriteLine();  
  44.             }  
  46.             Console.WriteLine();  
  47.             Console.Read();  
  49.             mongo.Disconnect(); // call to disconnect MongoDB server  
  50.         }  
  51.     }  

When you run that code you will see the following output.
Note: if you want to see data in the MongoDB Server, then use the following procedure.