Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Entity Framework Tutorial (Update)

You're reading from   Entity Framework Tutorial (Update) A comprehensive guide to the Entity Framework with insight into its latest features and optimizations for responsive data access in your projects

Arrow left icon
Product type Paperback
Published in Aug 2015
Publisher
ISBN-13 9781783550012
Length 274 pages
Edition 2nd Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Joydip Kanjilal Joydip Kanjilal
Author Profile Icon Joydip Kanjilal
Joydip Kanjilal
Arrow right icon
View More author details
Toc

Table of Contents (11) Chapters Close

Preface 1. Introducing the ADO.NET Entity Framework FREE CHAPTER 2. Getting Started 3. Entities, Relationships, and the Entity Data Model 4. Working with Stored Procedures in the Entity Data Model 5. Working with Entity Client and Entity SQL 6. Working with LINQ to Entities 7. Working with the Object Services Layer 8. Working with WCF Data Services A. Advanced Concepts Index

What is the ADO.NET Entity Framework?

Entity Framework is a type of ORM. It is a development platform that provides a layer of abstraction on top of the relational or logical model. In doing so, it isolates the object model of the application from the way the data is actually stored in the relational store. Developers can use the ADO.NET Entity Framework to program against an object model rather than the logical or relationship model.

This is illustrated using the self-explanatory diagram that follows:

What is the ADO.NET Entity Framework?

This level of abstraction is achieved using the Entity Data Model (EDM)—an extended entity relationship model. The EDM reduces the dependency of your domain object model on the database schema of the data store in use. We will discuss more on this topic later in this chapter.

Developers can use the ADO.NET Entity Framework to work with domain-specific properties such as employee name, employee address, contact details, and so on, without having to be concerned with how the actual data is stored and represented in the underlying data store. The framework can take care of the necessary translations to either retrieve data from your data store or perform inserts, updates, and deletes. Also, Entity Framework provides support to cache data automatically by default.

Is Entity Framework just another ORM?

The ADO.NET Entity Framework is an extended ORM technology from Microsoft. We say it is an extended ORM because it has many additional features compared to a typical ORM. ORMs often use metadata and factory classes to retrieve data or collections of data.

Note

Factory classes are based on the factory design pattern and are used to create instances of classes without exposing the instantiation logic to the client.

On the contrary, using Entity Framework, you can easily map your data to be accessible in a relational representation in the database to objects, no matter how the mapping is implemented. You can expose different data views to your application without having to change your relational schema. In essence, this allows the applications to have their own view of the data. The applications can even reuse the same views of data among themselves.

The major difference between Entity Framework and ORM tools is the EDM and the former's ability to query data using strongly typed LINQ. You can even use Entity SQL, a T-SQL-like query language to query the EDM, to execute dynamic queries. In addition to what a typical ORM framework provides, the Entity Framework provides and supports entity inheritance, entity composition, and a flexible, loosely-coupled, three-tiered model consisting of the conceptual model, the mapping layer, and the storage model. Please refer to the Appendix section for links to resources on this topic.

Entity Framework even enables you to extend the existing schema. In other words, you can extend the generated entity classes to create your own custom entity classes. You can define relationships of any kind such as one-to-one, one-to-many, and even many-to-many.

You have been reading a chapter from
Entity Framework Tutorial (Update) - Second Edition
Published in: Aug 2015
Publisher:
ISBN-13: 9781783550012
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image