Upload
dortha-jenkins
View
238
Download
2
Embed Size (px)
Citation preview
ADO.NET Entity Framework
Mike TaultyDeveloper & Platform GroupMicrosoft [email protected] http://www.mtaulty.com
ADO.NET Entity Framework
Extension to the ADO.NET provider modelFunctionality
Program against an abstracted model of your store schemaUse traditional ADO.NET API or ORM/LINQ
Slated to ship mid 2008Currently at Beta 3, Tooling at CTP 2Downloadable in ASP.NET 3.5 Extensions Preview
Quick Demo to Defer Boredom
.NET Entity Provider (Entity SQL)
Command
ConnectionReader
V3.0
Entity Framework Architecture
Store
.NET Data Provider
V2.0
Command
ConnectionReader
Adapter
V3.0
Conceptual Model
Entity Entityrelationship
Mapping (MSL)
V3.0Programming Model
Object Relational Mapping
LINQ
Tools, SSDL, MSL, CSDL
Programming with Entity SQL
The EntityClient provides the usualConnection, Command, DataReader
There is no EntityDataAdapter V1.0 the model is read-only
Entity SQL has some additional constructs to expose the underlying conceptual model – e.g.;
Programming with Entity Client
Mapping Examples ( 1 – Splitting )
Store
Good CustomersGood Customers
ID
FirstName
LastName
Bad CustomersBad Customers
ID
ForeName
Surname
CustomersCustomers
CustomerId
First
Last
Type
EntitiesMapping
Type=“G”
Type=“B”
Mapping Examples ( 2 – TPH )
Store
CustomerCustomer
CustomerId
First
Last
EntitiesMapping
CustomersCustomers
ID
FirstName
LastName
IsPremium
Overdraft
AccountManagerPremiumCustomerPremiumCustomer
Overdraft
AccountManager
?
* Framework also supports TPT
Mapping Examples ( 3 – View + SPs )
Store
UkCustomerUkCustomer
CustomerId
Name
EntitiesMapping
ClientView1ClientView1
select c.id, c.namefrom customers cwhere c.country = ‘UK’
p_DeleteUkCustomerp_DeleteUkCustomer
p_UpdateUkCustomerp_UpdateUkCustomer
p_InsertUkCustomerp_InsertUkCustomer
Querying with Entity SQL
Programming with LINQ to Entities
New Data Access ORM API implemented in assembly
System.Data.Entity.dllSystem.Data.Entity.Design.dll
Many NamespacesSystem.Data.EntitySystem.Data.Objectsand many more...
ORM API can be used with or without LINQ
Key Classes
StateManagement
Connectionprovider
MetadataMSL SSDLCSDL
CRUD
LINQ to Entities – Possible Topics
LINQ to Entities
Resources
Download ASP.NET 3.5 Extensions Previewhttp://www.asp.net
ADO.NET Team Bloghttp://blogs.msdn.com/adonet
Search for “entity” onhttp://mtaulty.com
Updates
Go here to download the latest version of this slide-deck
http://mtaulty.com/downloads/dw08.zip
MSDN in the UK
Visit http://msdn.co.uk NewsletterEventsScreencastsBlogs
© 2007 Microsoft Ltd. All rights reserved. Microsoft, Windows, Windows Vista 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.