3. 3
EF 6.x
Folie 6
O/R-Mapper
Mature
(since 2008)
Optimized
Ecosystem
Integration
Recommended LINQ
Modes of Operation
Folie 7
• Model First
• DB First
Mapping via XML
• Code First
• Code First with Reverse Engineering
Mapping via Code
4. 4
Code First brings several advantages
Folie 8
Reverse
Engineering
Source Control
More Intuitive for
Developers
More Freedom
for Developers
Code-based
Configuration
Conventions
Migrations
DbContext
Object Model
Folie 9
ObjectContext
7. 7
Non-Goals
Folie 14
• Yes, but only when it
really makes sense
API-
Changes
• NoSQL != RDBMS
Abstract
Paradigms
Migration
You have to modify existing code
Don't do it now!
Current Version 6.x will stay
8. 8
Feature Set now
Folie 16
EF 6
EF 7
EF 6 is still the recommended version!
Feature Set in Future
Folie 17
EF 6
EF 7.x+
9. 9
Some Limitations in 7.0
M:N-Relations
Model it with two 1:N
Lazy Loading
Just TPH-Inheritance
Complex Types
Custom Conventions
Mappings to Stored Procedures
Update Model from Database
Non-relational Providers
Some new Features
Handling of detached Entities
Improvements for Eager-Loading and Batching
Client-Evaluation and Raw SQL
Shadow State
Alternate Keys
Linux, Universal-Apps
PostgreSQL, SQLite
Folie 19
10. 10
7.0 or 6.x
Web with
.NET Core
EF 7.0
Universal
Apps
EF 7.0
Else EF 6.x
Code Frist
DEMO
Page 21
11. 11
Conclusion
Version 7: Spring-Cleaning
Getting rid of Legacy
One Mode of Operation: "Code First"
Time seems to be fitting: .NET Core
Increasing Reach:
NoSQL, Linux, Universal-Apps (.NET Core)
Providers for SQL Server, PostgreSQL, SQLite
New features, like Batching or Shadow Properties
EF 6.x is still recommended
Folie 22
manfred.steyer@SOFTWAREarchitekt.at
SOFTWAREarchitekt.at
ManfredSteyer
Contact