The document discusses different workflows for using Entity Framework to access and manage data, including model first, database first, and code first approaches. It also covers using Entity Framework with WCF Data Services to expose data via OData endpoints. Key topics include entity data models, reverse engineering databases, defining mappings, and generating databases from code using migrations. Live demos are provided for database first and code first workflows as well as creating and consuming a WCF Data Services API.
1 of 19
More Related Content
05 entity framework
1. 05 | Data Access with Entity Framework
Bruno Terkaly | Technical Evangelist
Bret Stateham | Technical Evangelist
2. Module Overview
Entity Data Models
Developer Workflows
WCF Data Services
7. Get it With NuGet. Got It?
Entity Framework 6 is RTM
EntityFramework.codeplex.com
Open Source
Nightly Builds
Accept pull requests from the community
Installable from NuGet
Release versions
Pre-Release if you choose to include them
8. Entity Framework Data Providers
Microsoft Ships support for
Microsoft SQL Server
(Via the EntityFramework NuGet Package)
Microsoft SQL Server Compact Edition
(Via the EntityFramework.SqlServerCompact NuGet Package)
3rd Party Providers
DevArt dotConnect Data Providers (devart.com)
Oracle
MySQL
SQLite
others
Firebird (FirebirdSQL.org)
10. Entity Framework Workflows
New Database
Existing Database
Use Designer Write Code
Model First:
Create your model in the designer
Database is generated from model
Classes are generated from model
Can update model
Database updates replace old objects
Database First:
Reverse engineer existing database
Designer generates model
Classes are generated off the model
You can update the database
You can modify the classes / mapping
Code First:
Create your classes in code
Mappings are defined in code
Database is generated from code
Updates are done using migrations
Code Second: (not an official name)
Create your classes in code
Use Entity Framework Power Tools
Reverse engineer model in designer
11. Database First
New Database
Existing Database
Use Designer Write Code
Model First:
Create your model in the designer
Database is generated from model
Classes are generated from model
Can update model
Database updates replace old objects
Database First:
Reverse engineer existing database
Designer generates model
Classes are generated off the model
You can update the database
You can modify the classes / mapping
Code First:
Create your classes in code
Mappings are defined in code
Database is generated from code
Updates are done using migrations
Code Second: (not an official name)
Create your classes in code
Use Entity Framework Power Tools
Reverse engineer model in designer
13. Code First Workflow
New Database
Existing Database
Use Designer Write Code
Model First:
Create your model in the designer
Database is generated from model
Classes are generated from model
Can update model
Database updates replace old objects
Database First:
Reverse engineer existing database
Designer generates model
Classes are generated off the model
You can update the database
You can modify the classes / mapping
Code First:
Create your classes in code
Mappings are defined in code
Database is generated from code
Updates are done using migrations
Code Second: (not an official name)
Create your classes in code
Use Entity Framework Power Tools
Reverse engineer model in designer
16. OData Where Art Though?
OData is a protocol for creating and consuming data APIs
Check it out at OData.org
Provides a standard way to use REST to expose & consume data
17. WCF Data Services
A convenient way to create OData services
Can expose most any model as Odata
Entity Framework is a great way to build your models
WCF Data Services 5.6.0 Available via NuGet
WCF Data Services Server Microsoft.Data.Services
WCF Data Services Client Microsoft.Data.Services.Client
Access Data using URIs or a Client Library
OData Query String Options
19. 息2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in
the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because
Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information
provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.