What is Entity Framework and Benefit of Entity Framework?
Pooja Singh
Select an image from your device to upload
Entity Framework FeaturesCross-platform: EF Core is a cross-platform framework which can run on Windows, Linux and Mac.Modelling: EF (Entity Framework) creates an EDM (Entity Data Model) based on POCO (Plain Old CLR Object) entities with get/set properties of different data types. It uses this model when querying or saving entity data to the underlying database.Querying: EF allows us to use LINQ queries (C#/VB.NET) to retrieve data from the underlying database. The database provider will translate this LINQ queries to the database-specific query language (e.g. SQL for a relational database). EF also allows us to execute raw SQL queries directly to the database.Change Tracking: EF keeps track of changes occurred to instances of your entities (Property values) which need to be submitted to the database.Saving: EF executes INSERT, UPDATE, and DELETE commands to the database based on the changes occurred to your entities when you call the SaveChanges() method. EF also provides the asynchronous SaveChangesAsync() method.Concurrency: EF uses Optimistic Concurrency by default to protect overwriting changes made by another user since data was fetched from the database.Transactions: EF performs automatic transaction management while querying or saving data. It also provides options to customize transaction management.Caching: EF includes first level of caching out of the box. So, repeated querying will return data from the cache instead of hitting the database.Built-in Conventions: EF follows conventions over the configuration programming pattern, and includes a set of default rules which automatically configure the EF model.Configurations: EF allows us to configure the EF model by using data annotation attributes or Fluent API to override default conventions.Migrations: EF provides a set of migration commands that can be executed on the NuGet Package Manager Console or the Command Line Interface to create or manage underlying database Schema.**