Introduction
Generally, if you are developing an application which needs real-time information (give the information as soon as it is available), the first idea which comes to your mind is - create a timer, which will call a function, based on some time interval again and again. The function retrieves the database record and you check whether new information is available or not.
This approach is not real time and it uses a lot of resources in both sides (Server, Client) and if your device does not have enough resources, the Application will hang or the UI will not respond.
This approach is not real time and it uses a lot of resources in both sides (Server, Client) and if your device does not have enough resources, the Application will hang or the UI will not respond.
What is the solution?
The solution is to use something which is made for real-time communication, and we have a library from Microsoft known as Signalr.
Signalr is a library for .NET developers for adding real time functionality to the Application made using .NET technology (ASP.NET Application, C# console Application, WPF Application, Windows phone Application etc.). It is open source and you can download it from GitHub.
The GitHub URL for Signalr.
What you can create
You can create all different types of applications which need real time functionality.
- Chat Application.
- Application which requires Real time notification.
- An online game with high frequency updates.
How It Works
The Signalr uses the concept of socket. Now, you may have the question, what is socket?
Let's understand it by example- consider an electrical socket, which is waiting for the plugs to be connected and will start transferring its current as soon as a suitable plug will be connected.

Now, replace the electric socket with 'Server', plug with 'Client', and current with 'data'.

Now, replace the electric socket with 'Server', plug with 'Client', and current with 'data'.
Now, again read the whole sentence - a server is waiting for the clients to be connected and will start transferring its data as soon as a suitable client will be connected.
Now, it sounds like real time communication.
Thus, the socket consists of two things -
- Server
- Client (may be multiple)
In the above scenario,there is a single hole in the electric sockets but there may be multiple holes, say unlimited, for instance, so multiple plugs can be connected.
The Server can have multiple clients for a single Server and each client will receive the data based on some mechanism defined under the Server.
Now, let's come to the Signalr,

Suraj KumarPosted Aug 2, 2016, 7:23 AM
Http://www.dotnetguru.in/2016/07/aspnet-signalr.html
Prasanna MuraliPosted Jul 29, 2016, 11:40 AM
Nice one..
Muntazer MehdiPosted Jul 29, 2016, 10:18 AM
Very informative and nice artical
Vignesh ManiPosted Jul 29, 2016, 8:44 AM
Nice
Vikram ChaudharyPosted Jul 29, 2016, 2:33 AM
Nice Intro..Waiting for next article