Overview of.NET Prepared by: Xin,Lu.NET Seminar Aug.10, 2003.
Oct 2 2007 * Brad Tutterow. VS 2008.NET 3.5LINQ Entity Framework The ADO.NET Entity Framework is...
-
Upload
augustus-phillips -
Category
Documents
-
view
218 -
download
0
Transcript of Oct 2 2007 * Brad Tutterow. VS 2008.NET 3.5LINQ Entity Framework The ADO.NET Entity Framework is...
Oct 2 2007 * Brad Tutterow
The ADO.NET Entity Framework is part of Microsoft’s next generation of .NET technologies.
It is intended to make it easier and more effective for object-oriented applications to work with data.
04/20/23 Daugherty Business Solutions * Brad Tutterow
Originally intended to be part of the Visual Studio 2008 Release
Now scheduled for “later”.
Entity Framework is currently Beta 2
Entity Framework Tools are currently CTP
04/20/23 Daugherty Business Solutions * Brad Tutterow
Inherit differences between data expression in a relational database and the same data expressed in an object-oriented application.
04/20/23Daugherty Business Solutions * Brad Tutterow
• Almost any business application today has to speak to a relational database.
• This involves the usual suspects of tables with foreign keys, a smattering of views, and generally a gob of stored procedures.
04/20/23 Daugherty Business Solutions * Brad Tutterow
Applications themselves are written in a completely different world.
The same data that lives in the relational database is represented entirely differently in the application.
04/20/23 Daugherty Business Solutions * Brad Tutterow
The result of this “impedance mismatch” is that developers devote a lot of time and energy writing code to translate between how the database likes to see data and how the application likes to see data.
04/20/23 Daugherty Business Solutions * Brad Tutterow
Hibernate (Java) Enterprise Objects Framework
(Mac OS) NHibernate (.NET) LINQ to SQL (Visual Studio 2008) And many, many, more …
04/20/23Daugherty Business Solutions * Brad Tutterow
The ADO.NET Entity Framework seeks to remedy the problem by providing a layer of abstraction between the logical data model and the application domain.
04/20/23 Daugherty Business Solutions * Brad Tutterow
Closer to the application problem space
Better suited for object oriented programming
Supports Inheritance Supports complex
types Relationships are more
meaningful to the application
04/20/23 Daugherty Business Solutions * Brad Tutterow
The tools and technology that developers will interact with when using the ADO.NET Entity Framework
04/20/23Daugherty Business Solutions * Brad Tutterow
A gob of XML that defines Logical Data Tables,
Views, Foreign Keys Entity Objects that
Map to the Logical Data
The Mapping Between the Two
04/20/23 Daugherty Business Solutions * Brad Tutterow
A Visual Studio Designer that protects developers from the XML that is the EDM
04/20/23 Daugherty Business Solutions * Brad Tutterow
A code-generated data context created from the Entity Data Model
Responsible for managing communication between the conceptual data model and the logical data model
04/20/23 Daugherty Business Solutions * Brad Tutterow
Code-generated class definitions for objects defined in the EDM.
04/20/23 Daugherty Business Solutions * Brad Tutterow
How do we get data out of the fancy Entity Data Model?
04/20/23Daugherty Business Solutions * Brad Tutterow
A brand new SQL language to learn
Leverages the rich, object-oriented Entity Data Model Inheritance Collections Complex Types
Literal Strings – No Compiler Checking
Questionable value in embedded SQL in code
04/20/23 Daugherty Business Solutions * Brad Tutterow
Queries the object model created against the EDM
Still string-based. No compiler checking
An ugly mix of code and eSQL statements
04/20/23 Daugherty Business Solutions * Brad Tutterow
Full compiler checking. No wondering if the query is valid.
A fun new SQL-Like syntax
More OO-ish
04/20/23 Daugherty Business Solutions * Brad Tutterow
Getting data out of the Entity Data Model using LINQ to Entities
04/20/23Daugherty Business Solutions * Brad Tutterow
The power of the Entity Data Model contrasted to a logical data model of tables and stored procedures.
04/20/23Daugherty Business Solutions * Brad Tutterow
Database TablesDatabase Tables Entity Data ModelEntity Data Model
04/20/23Daugherty Business Solutions * Brad Tutterow
Combining Two Tables into one EDM Entity
04/20/23Daugherty Business Solutions * Brad Tutterow
Database TablesDatabase Tables Entity Data ModelEntity Data Model
04/20/23Daugherty Business Solutions * Brad Tutterow
Implementing Inheritance by marking one Entity as a subclass of another
04/20/23Daugherty Business Solutions * Brad Tutterow
Implement Complex Types (e.g. Address)
Consume Conceptual Model with Reporting Services and other BI Tools
Create an EDM that talks to stored procedures
Use transactions, manage concurrency, cache execution plans
04/20/23Daugherty Business Solutions * Brad Tutterow
Database Result Desired EDM Object Manipulation
INSERT ROW Create new objectAdd object to EDM ContextUpdate Context
DELETE ROW Get instance of object from EDM ContextAsk Context to remove the objectUpdate Context
UPDATE ROW Get instance of object from EDM ContextUpdate objectUpdate Context
04/20/23Daugherty Business Solutions * Brad Tutterow
04/20/23Daugherty Business Solutions * Brad Tutterow