Entity framework support the development of data-oriented software applications. It enables developers to work with data in the form of domain-specific objects and properties, such as customers and customer addresses, without having to concern themselves with the underlying database tables and columns where this data is stored. Entity framework can be installed on .NET Framework version 3.5 SP1 above. In simple terms it is about writing model as part of your business design process and create the database from that model.
Entity framework supports Model First, Code First and Database First design approaches.
Model First Approach
– provides the option to create entities and relationships directly on the design interface of the EDMX and then execute it. An architect uses the Model First approach when designing the database and the object model at the same time with Entity Designer in Microsoft Visual Studio.
Code First Approach
– domain driven development, creating class instead of tables in the database. A process in which the development team writes the plain old CLR object (POCO) classes,
and the Code First generator builds the database from those classes. Doing this enables the development team to design the object structure, in code, that bests suits their application
and generate the database from that design. The conceptual model is mapped to the storage model in code.
Database Design Approach
– upgrading or conversion of database which enables you to continue using the existing structure with no impact on the database
Model First and Code First are both strongest in the creation of the initial database schema.