eric nelson eric.nelson@microsoft.com (or )

Post on 12-Jan-2016

217 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Eric Nelson eric.nelson@microsoft.comhttp://geekswithblogs.net/iupdateable (or http://bit.ly/ericnelson )http://twitter.com/ericnel http://twitter.com/ukmsdn

Developer EvangelistMicrosoft UK

Were you on twitter last Dec?http://twitter.com/ericnel

Agenda

Quick recap of the journey so farEntity Framework 4.0 Drill Down

Lots of demos

Object Relational Mapping

Many ORMs out thereNo clear “winner” = relatively little adoption of ORMDevelopers waiting on MicrosoftThen we shipped two ... hmmm

LINQ to SQL in Visual Studio 2008ADO.NET Entity Framework in Visual Studio 2008 SP1

ADO.NET Entity Framework Recap

Tools and services to create an Entity Data Model (EDM)

Conceptual to Mapping to StorageTools and services for consuming an Entity Data Model

LINQ to Entities, Object Services and Entity SQL

Together they address the “impedance mismatch”

ConceptualConceptual

MappingMapping

StorageStorage

Entity Data ModelEntity Data Model

Rows in Tables

Rows in Tables

Objects in ApplicationsObjects in

Applications

Entity Framework 1.0Too many pain points

The designer!Model First not supportedPoor support for Stored ProceduresNo Pluralization/SingularizationForeign Keys hiddenLazy Loading not supportedMissing LINQ Operators vs LINQ to SQLGenerated SQL unreadableNo support for Plain Old CLR ObjectsN-Tier difficult

Entity Framework 4.0 Removing the friction

Better Tools and Design ExperienceMore powerful/flexible runtimeAnd

Persistence Ignorance*Code Only*N-Tier*

Note:* Delivered in .NET Framework 4 and a separate download

Better Tools and Design Experience

Model FirstTemplated code generationStored ProceduresPluralization/Singularization Complex TypesBetter delete and search

Model First and Templated Code Generation

More powerful/flexible runtime

Lazy Loading (Deferred Loading in Beta 1 )Foreign Keys surfacedMore complete LINQ implementationExecuteStoreQueryEntityFunctions and SqlFunctionsImprovements to generated SQL

Deferred Loading, Functions, Generated SQL

http://blogs.msdn.com/adonet/archive/2009/08/05/improvements-to-the-generated-sql-in-net-4-0-beta1.aspx

Persistence Ignorance

First class support for Persistence Ignorance No modifications to your classes!

Persistence Ignorance

Code Only

Create the database from the classesNo modelConvention to config

Code Only

N-Tier

Self Tracking Entities

N-Tier

Entity Framework

The designer!No support for Plain Old CLR ObjectsNo Pluralization/SingularizationForeign Keys hiddenModel First not supportedLazy Loading not supportedMissing LINQ Operators vs LINQ to SQLGenerated SQL unreadableN-Tier difficultPoor support for Stored Procedures

Summary

top related