Skip to main content

How to setup MongoDB tools to test/develop applications in C#?


In this article, I will be mentioning about how to install MongoDB infrastructure to develop any application in C#. After you have read this article, you will be ready to develop C#-MongoDB applications by following the below instructions step by step.

Versions of tools used in this demo:

  • Visual Studio 2010
  • .NET 4.0
  • MongoDB C#/.NET driver Version 1.11.0
  • MongoDB 3.4.0
  • Robomongo 0.9.0


1- Download MongoDB

To download latest version of MongoDB, click here.
Below page is opened. According to your Operating System, select MongoDB version and click to "DOWNLOAD". After downloading, go ahead and install MongoDB.



2- Download RoboMongo

Click here to download latest version of RoboMongo.
As December 2016, latest version of RobomMongo is 0.9.0. To download the latest version, click "Download" button. If you want to download previous versions, click on "Download previous version"


After that, select the OS and download RoboMongo. Go ahead and install the downloaded software.







3- Add new  Environment variables.

Default installation directory will be like "C:\Program Files\MongoDB\Server\3.4\bin". Add this directory to the environment variables with the name of "PATH" as following:



From system properties on "Advanced" tab, click on "Environment Variables" button. Click "New.." on user Variables section and type "Variable name" and "Variable value" as "PATH" and "C:\Program Files\MongoDB\Server\3.4\bin" respectively.



4- Create MongoDB Directory Structure  on your PC

Conventionally, MongoDB directory is created under drive D. Create a folder named "MongoDB" under D (i.e. D:\MongoDB).
Create folder named "data" under D:\MongoDB (i.e. D:\MongoDB\data)
Create folder named "db" under D:\MongoDB\data (i.e. D:\MongoDB\data\db)
Create a file named "mongod.cfg" under MongoDB (i.e. D:\MongoDB\mongod.cfg)
Paste the following code into this configuration file:

dbpath = D:\MongoDB\data\db
logpath = D:\MongoDB\mongod.log
logappend = true

5- Create Windows Service for MongoDB process.


Run "Command Prompt" with Administrative privileges i.e. Either click right and click on "Run as Administrator" or press "Ctrl + Shift + Enter" on  Command Prompt App.


To create windows service, run following command on command prompt:

Be careful that you run following code when you are in the directory where "sc.exe" is located. This executable file is generally located in "C:\Windows\System32\". If you are not in this directory in command prompt, open this directory using "cd C:\Windows\System32" command. Then proceed safely.

sc.exe create MongoDB binPath= "C:\Program Files\MongoDB\Server\3.0\bin\mongod.exe 
--service --config=\"D:\MongoDB\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"

After Windows service is created, you will see that a service named "MongoDB" exists in the service list and its status is running as follows:



You can use following command line codes to start and stop this service:
To start: "net start MongoDB"
To end: "net stop MongoDB"


After you stopped this service, you can observe from the services list that, current status of service MongoDB is not "Running" as shown in below figure.




6- Download MongoDB C# Drivers


The next step is the downloading C# drivers. Before proceeding, remember and be careful while selecting the compatible C# driver of MongoDB with your .NET version. The platform that C# drivers will be downloaded is nuget store. Go to nuget store to download official C# drivers


  • If you still do not have nuget store on your Visual Studio, follow these steps:


Click on "Tools -> Extension Manager"


Type "nuget" on search screen and install "Nuget Package Manager".





  • If you have already have nuget store, follow these steps:




Search "mongo" and install the first two drivers namely: "MongoDB.Driver" and "(Legacy)Official  C# driver for MongoDB". 



However, these two drivers are compatible with .NET 4.5 . If you have an earlier version of .NET (i.e. .NET 4.0), you should install earlier versions of these drivers. (i.e. Version 1.11 or Version 1.10)
To install earlier versions of drivers, you should open "Package Manager Console" first. Then execute following command: "Install-Package mongocsharpdriver -Version 1.11.0" (without quotes)


After you have installed drivers successfully, you will see that two dll files added to your reference list automatically namely, "MongoDB.Bson" and "MongoDB.Driver".





7- Connect RoboMongo

  • Open RoboMongo application.
  • Click on "create" to create a link to listen database


You can name the name of the connection as you desired. Address is by default localhost and the port number is "27017". You can modify this part as you desired, but the simplest method is to use the local host and local port number. Then. click on "Save" button.



Conclusion
Finally, you are all set with the infrastructure related to C# and MongoDB. Now you can develop any application on C# to read and write the database MongoDB.  



Comments

Popular posts from this blog

How to Fill out a Cheque?

In this post, I will demonstrate how to fill out a cheque properly. You can have a cheque book either from your bank or any store. If you find these two suggestions expensive, you could also design and print out your own cheque. In Figure 1, a sample cheque is displayed and in Figure 2, some regions of the sample cheque are highlighted. Figure 1: Sample unfilled cheque. Figure 2: Some regions are highlighted in sample cheque. 1- Name and Address of Payer: Name and  address of the person who is the owner of this cheque and is filling out the cheque should be written in this region. 2- Date: For any official document, date is a mandatory field and hence you should write current date in this region. 3- Payee Name: Payee could be either a person or an organization (Store, Restaurant, Company, School etc.) You should write the name of the payee here explicitly. 4- Amount of Payment (Numeric): Exact amount of the payment should be w

Star Wars ASCIImation with Python - Windows

In this post, we'll watch a Star Wars movie in ASCII format. The only thing we need for this demo is Python-installed PC and internet connection. Figure : Screenshots from Python Command line while Star Wars is being streamed All credits gained in this demo will go to " blinkenlights.nl " [2] website, which broadcasts this ASCII movie using Telnet protocol on Port 23, and Python which makes socket implementation very easy for us. No authentication is needed for this broadcast. Anyone who is able to create a TCP socket and listens  blinkenlights.nl  on port 23 would be able to get this stream and display on their Python command line. CODE My main source for Python source code is [1]. What  code below does is simply importing Python "socket" library, create a socket, use " towel.blinkenlights.nl " address variable to create connection, receive data from socket and display it. While typing (copy/paste) code, be careful about indentatio

Internet of Things (IoT) with MicroPython

VIDEO LIVE DEMO Please check the link for Live DEMOs  SLIDES REFERENCES    [1] http://micropython.org/    [2] WebREPL: http://micropython.org/webrepl/    [3] Programming with MicroPython, Nicholas H. TollerWay    [4] http://dpgeorge.net/    [5] https://github.com/micropython/micropython    [6] https://www.youtube.com/watch?v=EvGhPmPPzko&t=1488s    [7] https://forum.micropython.org/viewtopic.php?t=744    ABBREAVIATIONS   REPL : Read Evaluate Print Loop