Entity Framework vs DapperIntroduced by Microsoft on 11th August 2008, the first version of entity framework or EFv1 received a lot of criticism from the developers at those times. It was included with .NET Framework 3.5 Service Pack 1 and Visual Studio 2008 Service Pack 1. So to address the criticism a second version called Entity Framework version 4 or EFv4 was released as a part of .NET 4.0. The next version of this framework took support of Code First. After repeated releases of better versions Microsoft mordernized and componentized their approach to bring .NET cross-platform to Linux, OSX and elsewhere, thereby rewriting the next version of Entity Framework completely. This was released as Entity Framework Core 1.0 on 27th June 2016, alongside ASP.Net Core 1.0 and .Net Core 1.0. It was originally named Entity Framework 7, but was renamed later.What is Entity Framework?Before .NET 3.5, made its place among developers, developers used ADO.NET codes to submit or reteieve application data from underlying databases. This process was cumbersome and error prone. The DataSet created to fetch or submit data to the datbase had to be translated to .NET and vice versa to apply the rules of business. To address this issue Microsoft launched Entity Framework to automate all the database related activities.Entity Framework is an open-source ORM framework for .NET applications supported by Microsoft. It allows the developers to use objects of domain specific classes without focusing on the underlying database where the data is stored. With the Entity Framework, developers can work at a higher level of abstraction while dealing with data, and creating and maintaining data-oriented applications with less code. This makes the process less error prone.How Entity Framework works ?Entity Framework API (EF6 & EF Core) maps domain classes to the database schema, translate & execute LINQ queries to SQL, track changes occurred on entities during their lifetime and save the changes to the database. The first task of EF API is to create the Entity Data Model.DAPPER: It is an object relational mapping product for .NET platform. It provides a framework for mapping an object-oriented domain model to a traditional relational database. It relieves the developers from a significant portion of relational data persistence-related programming tasks.The Key Features of Dapper are:Fewer lines of codeObject mapperSpeedy and High PerformanceEasy handling of SQL queryMultiple Query SupportChoice of static or dynamic object bindingSupport and easy handling of stored proceduresBulk data insert functionalityOperating directly on IDbConnection interfaceWhat is Dapper and how it works?Dapper is a simple object mapper for .NET and is called the King of Micro ORM in terms of speed and is virtually as fast as using a raw ADO.NET data reader. It is a three step process.Create an IDbConnection object.Write a query to perform CRUD operations.Pass query as a parameter in Execute methodDapper can work with any DB provider since there is no DB specific implementation.