Download - Eric Nelson [email protected] (or )
![Page 1: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/1.jpg)
Eric Nelson [email protected]://geekswithblogs.net/iupdateable (or http://bit.ly/ericnelson )http://twitter.com/ericnel http://twitter.com/ukmsdn
Developer EvangelistMicrosoft UK
![Page 2: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/2.jpg)
Were you on twitter last Dec?http://twitter.com/ericnel
![Page 3: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/3.jpg)
Agenda
Quick recap of the journey so farEntity Framework 4.0 Drill Down
Lots of demos
![Page 4: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/4.jpg)
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
![Page 5: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/5.jpg)
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
![Page 6: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/6.jpg)
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
![Page 7: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/7.jpg)
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
![Page 8: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/8.jpg)
Better Tools and Design Experience
Model FirstTemplated code generationStored ProceduresPluralization/Singularization Complex TypesBetter delete and search
![Page 9: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/9.jpg)
Model First and Templated Code Generation
![Page 10: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/10.jpg)
More powerful/flexible runtime
Lazy Loading (Deferred Loading in Beta 1 )Foreign Keys surfacedMore complete LINQ implementationExecuteStoreQueryEntityFunctions and SqlFunctionsImprovements to generated SQL
![Page 11: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/11.jpg)
Deferred Loading, Functions, Generated SQL
![Page 12: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/12.jpg)
http://blogs.msdn.com/adonet/archive/2009/08/05/improvements-to-the-generated-sql-in-net-4-0-beta1.aspx
![Page 13: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/13.jpg)
Persistence Ignorance
First class support for Persistence Ignorance No modifications to your classes!
![Page 14: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/14.jpg)
Persistence Ignorance
![Page 15: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/15.jpg)
Code Only
Create the database from the classesNo modelConvention to config
![Page 16: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/16.jpg)
Code Only
![Page 17: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/17.jpg)
N-Tier
Self Tracking Entities
![Page 18: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/18.jpg)
N-Tier
![Page 19: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/19.jpg)
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
![Page 20: Eric Nelson eric.nelson@microsoft.com (or )](https://reader036.vdocument.in/reader036/viewer/2022062322/56649e665503460f94b60632/html5/thumbnails/20.jpg)
Summary