Book Image

Mastering Entity Framework

By : Rahul Rajat Singh
Book Image

Mastering Entity Framework

By: Rahul Rajat Singh

Overview of this book

<p>Data access is an integral part of any software application. Entity Framework provides a model-based system that makes data access effortless for developers by freeing you from writing similar data access code for all of your domain models.</p> <p>Mastering Entity Framework provides you with a range of options when developing a data-oriented application. You’ll get started by managing the database relationships as Entity relationships and perform domain modeling using Entity Framework. You will then explore how you can reuse data access layer code such as stored procedures and table-valued functions, and perform various typical activities such as validations and error handling. You’ll learn how to retrieve data by querying the Entity Data Model and understand how to use LINQ to Entities and Entity SQL to query the Entity Data Model.</p>
Table of Contents (19 chapters)
Mastering Entity Framework
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Setting up the test environment


To understand transactions, let's create a sample application that we can use to understand the related concepts. Let's create a simple application to simulate bank account scenarios. Just for the sake of simplicity, let's say a hypothetical bank uses separate tables for its various account types. Let's create two tables in the database: one for SalaryAccount and another for SavingAccount. The generated Entity Data Model for this sample database will look like the following:

The generated Entity Data Model for the test application

From the application perspective, whenever a user chooses to transfer some money from SalaryAccount to SavingAccount, this operation should be treated as a single unit of work. It should never happen that the amount gets debited from SalaryAccount and never gets credited in the SavingAccount. Let's use this scenario to see how we can manage transactions using Entity Framework.

The initial amount of 5,000 will be present in SalaryAccount...