Satisfy Your Technical Curiosity ADO.NET vNext The Entity Data Model, Object Services, and LINQ Bob Beauchemin Director of Developer Resources, SQLskills.

Slides:



Advertisements
Similar presentations
Introduction to NHibernate By Andrew Smith. The Basics Object Relation Mapper Maps POCOs to database tables Based on Java Hibernate. V stable Generates.
Advertisements

Getting Started with Oracle and .NET
Unit 1: Overview of the Microsoft.NET Platform
new database engine component fully integrated into SQL Server 2014 optimized for OLTP workloads accessing memory resident data achive improvements.
.NET 3.5 SP1 New features Enhancements Visual Studio 2008 SP1 New features Enhancements Additional features/enhancements.
Native XML Database or RDBMS. Data or Document orientation If you are primarily storing documents, then a Native XML Database may be the best option.
Michael Pizzo Software Architect Data Programmability Microsoft Corporation.
Shyam Pather Development Manager Microsoft Session Code: DTL402.
© Logica All rights reserved ADO vNext LINQ LINQ to SQL Entity Framework Freek Leemhuis
Chapter 10 Database Applications Copyright © 2011 by The McGraw-Hill Companies, Inc. All Rights Reserved. McGraw-Hill.
--What is a Database--1 What is a database What is a Database.
The Microsoft Technical Roadshow 2007 Advances for Data in VS “Orcas” Mike Taulty Developer & Platform Group Microsoft Ltd
Chapter 4 Relational Databases Copyright © 2012 Pearson Education, Inc. publishing as Prentice Hall 4-1.
Chapter 4 Relational Databases Copyright © 2012 Pearson Education 4-1.
Discover, Master, InfluenceSlide 1 SQL Server Compact Edition and the Entity Framework Rob Sanders Readify.
Virtual techdays INDIA │ august 2010 Building ASP.NET applications using SQL Server Compact Chaitanya Solapurkar │ Partner Technical Consultant,
Overview of Database Access in.Net Josh Bowen CIS 764-FS2008.
Introduction to ADO Entity Framework ir Denis VOITURON Source:
Eric Nelson Developer & Platform Group Microsoft Ltd
Chapter One Overview of Database Objectives: -Introduction -DBMS architecture -Definitions -Data models -DB lifecycle.
Some Basic Database Terminology
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Database Lecture # 1 By Ubaid Ullah.
Information storage: Introduction of database 10/7/2004 Xiangming Mu.
.NET Database Technologies: Entity Framework additional notes – part 2.
LINQ Boot Camp ADO.Net Entity Framework Presenter : Date : Mahesh Moily Nov 26, 2009.
Entity Framework, a quickstart Florin−Tudor Cristea, Microsoft Student Partner.
Chapter 2 CIS Sungchul Hong
10-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf.
Database Technical Session By: Prof. Adarsh Patel.
Introduction to Database Systems
Overview of Data Access MacDonald Ch. 15 MIS 324 Professor Sandvig.
Entity Framework Overview. Entity Framework A set of technologies in ADO.NET that support the development of data-oriented software applications A component.
Introduction to LINQ Lecture # 19 August Introduction How do you interrogate/manipulate data? What if you could do the work in a type-safe," string-free.
SQL Structured Query Language Programming Course.
Relational Databases Database Driven Applications Retrieving Data Changing Data Analysing Data What is a DBMS An application that holds the data manages.
Lecture2: Database Environment Prepared by L. Nouf Almujally & Aisha AlArfaj 1 Ref. Chapter2 College of Computer and Information Sciences - Information.
Lap Around Visual Studio 2008 &.NET 3.5 Enhancements.
Lecture2: Database Environment Prepared by L. Nouf Almujally 1 Ref. Chapter2 Lecture2.
Entity Framework Code First – Beyond the Basics Sergey Barskiy, Magenic Microsoft MVP – Data Platform Principal Consultant.
Oct * Brad Tutterow. VS 2008.NET 3.5LINQ Entity Framework  The ADO.NET Entity Framework is part of Microsoft’s next generation of.NET technologies.
Creating and Maintaining Geographic Databases. Outline Definitions Characteristics of DBMS Types of database Relational model SQL Spatial databases.
Ventsislav Popov Crossroad Ltd.. 1. ASP.NET Data Source Controls  SqlDataSource  EntityDataSource  ObjectDataSource 2. Entity Data Model and ADO.NET.
Entity Framework Code First – Beyond the Basics Sergey Barskiy, Magenic Microsoft MVP – Data Platform Magenic, Principal Consultant Level: Introductory.
Chapter 3: Relational Databases
ADO.NET 3.0 – Entity Data Model Gert E.R. Drapers Chief Software Architect Visual Studio Team Edition for Database Professionals Microsoft Corporation.
Database Environment Chapter 2. The Three-Level ANSI-SPARC Architecture External Level Conceptual Level Internal Level Physical Data.
2 Behind every great site, there is great data Eric Nelson Developer Evangelist Microsoft UK
Introduction to Core Database Concepts Getting started with Databases and Structure Query Language (SQL)
SQL Basics Review Reviewing what we’ve learned so far…….
ISC321 Database Systems I Chapter 2: Overview of Database Languages and Architectures Fall 2015 Dr. Abdullah Almutairi.
Understanding Core Database Concepts Lesson 1. Objectives.
Fundamental of Database Systems
Databases and DBMSs Todd S. Bacastow January 2005.
Introduction to Entity framework
CS4222 Principles of Database System
Introduction to Database Processing with ADO.NET
Introduction to Entity Framework
Chapter 4 Relational Databases
Entity Framework 4 and WCF Data Services 4
ADO.NET Entity Framework Marcus Tillett
ADO.NET Entity Framework
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
ADO.NEXT Advances in Data Access for 2008
Data, Databases, and DBMSs
Data Model.
Database Applications
ADO.NET Entity Framework
Understanding Core Database Concepts
.NET Framework V3.5+ & RESTful web services
Presentation transcript:

Satisfy Your Technical Curiosity ADO.NET vNext The Entity Data Model, Object Services, and LINQ Bob Beauchemin Director of Developer Resources, SQLskills

Satisfy Your Technical Curiosity About Bob Beauchemin Independent Consultant/Trainer/Writer/Speaker Director of Developer Resources, SQLskills Website: Blog: SQL Server MVP Author of books and numerous resources related to SQL Server and data access A Developer's Guide to SQL Server 2005 A First Look at SQL Server 2005 for Developers Best Book SQL Server Magazines Readers Choice Awards (2005) Essential ADO.NET

Satisfy Your Technical Curiosity Overview What IS in vNext? The Entity Data Model Entity Provider Entity SQL Object Services LINQ for Entities LINQ for SQL LINQ for DataSet

Satisfy Your Technical Curiosity What is ADO.NET vNext? A part of Visual Studio Orcas release In.NET Framework 3.5 Changes to languages VB 9.0 C# 3.0 CTP available now

Satisfy Your Technical Curiosity What IS in ADO.NET vNext? A new data model Entity Data Model Three XML Schemas for defining and mapping CSDL - conceptual data language (DDL for EDM) SSDL - store-specific data language MSL - mapping data language A set of Object Services An ADO.NET data provider (EntityProvider) Hooks for provider writers EDM not restricted to SQL Server

Satisfy Your Technical Curiosity What IS in Orcas? Two new data access languages LINQ Entity SQL (ESQL) Implementations for databases LINQ to SQL LINQ to Entities...and the ADO.NET DataSet LINQ to DataSet

Satisfy Your Technical Curiosity Entity Data Model Applications model in terms of entities EDM is a conceptual model that includes Structural inheritance Composition Relationships as first class types EDM is not a 1-1 match of the relational model Entities != Rows Collections != Tables

Satisfy Your Technical Curiosity Views of Data Views of data are layered Lowest level - physical storage Filegroups Exact layout of rows on disk Index structure Relational apps unaware of this level Logical level Tables, Keys, Column Constraints PK/FK constructs, "Join tables" Relational modeling works at this level Conceptual level Entities and relationships EDM modeling works at this level

Satisfy Your Technical Curiosity Uses of the Conceptual Level Existing tools work at conceptual level Report Builder - SMDL files Replication - Transactional replication groups UDM - Data Source Views in Analysis Services Each tool uses a slightly different model EDM could be used to consolidate models

Satisfy Your Technical Curiosity Entity Data Model Borrows from Relational and E-R models Borrows from UML and object models Concepts Entity Types and Entity Sets Associations and Association Sets Complex types Structural Inheritance Collections Entity SQL to query against EDM sets

Satisfy Your Technical Curiosity EDM Description Language EDM is a model Not a physical implementation EDM is described in CSDL Conceptual Schema Definition Language An XML-based grammar Defines model in terms of Complex types made up of simple types Inheritance Relationships EDM model is mapped to RDBMS SSDL - Describes relational database MDL - Maps

Satisfy Your Technical Curiosity Entity SQL Language Entity SQL - query language for EDM Basic relational query concepts + SQL 1999 query concepts + Retrieval as tuples or types Polymorphic queries Support for relationships Entity SQL is a textual query language Query text not programming language specific No compile-time checking or IntelliSence Currently query-only Update through Object Services Update through ESQL in future

Satisfy Your Technical Curiosity Object Services Object Services provides services for EDM Fetch semantics Lazy loading option Change tracking Identity management Updatability Transaction support Object Services uses ESQL to query Updates through change tracking layer Stored procedures and functions supported Object Services built over ADO.NET provider

Satisfy Your Technical Curiosity EntityProvider ADO.NET provider for EDM "Native store" is EDM "Native language" is ESQL Provider support useful for Integration with existing tools Familiarity for ADO.NET programmers

Satisfy Your Technical Curiosity Wither LINQ? LINQ is language integrated query Strong typing IntelliSense Anonymous types that represent projections LINQ enables query over Object collections XML (LINQ to XML) Relational Databases (LINQ to SQL) ADO.NET DataSet (LINQ to DataSet) EDM (LINQ to Entities)

Satisfy Your Technical Curiosity LINQ and ESQL Why are there two query languages? LINQ is programming language based multiple types of data as input can be extended to new input types uses LINQ to SQL for database programming ESQL is data model based EDM-specific an extension to the SQL language update DML is planned integration with DB-centric tools planned can use Object Services for database programming Or... You can use LINQ to Entities for database programming

Satisfy Your Technical Curiosity LINQ to SQL and EDM LINQ to SQL allows Object model based on relational model One class per table Relationships (1-1, 1-many, many-many) Inheritance not related to persistence Stored procedures or LINQ Services for inserts, updates, and deletes EDM mapping allows Entity model independent of relational model Structural inheritance and composition Relationships as first-class types Stored procedures on Object Services for inserts, updates, and deletes Neither currently supports SQLCLR UDTs

Satisfy Your Technical Curiosity Object Services EDM is the only "data store" ESQL is the only programming language ADO.NET provider writers can include support for EDM in providers

Satisfy Your Technical Curiosity LINQ Services LINQ Services useable with LINQ to Entities LINQ to SQL LINQ to DataSet XML data Model is similar for all types IQueryable Operations can be expanded with user- defined constructs in code

Satisfy Your Technical Curiosity LINQ Tool Support In Visual Studio Orcas Mar CTP Add LINQ to SQL file (dbml) Can drag tables from Server Explorer Can drag class definitions from Solution Explorer Can add properties, associations, inheritance to the model Can configure insert/update/delete procedures Generates classes in project LINQ - database table DDL generation from dbml No relationships or constraints in generated DDL SQLMetal command line tool for LINQ

Satisfy Your Technical Curiosity EDM Tool Support In Visual Studio Orcas Mar CTP Add ADO.NET Entity Model Can add tables from the database Generates CSDL, SSDL, MSL Generates classes in project Can customize using schema-guided XML editor EDMGen command line tool for EDM

Satisfy Your Technical Curiosity Summary ADO.NET vNext added support for EDM ADO.NET provider Object Services ESQL and LINQ for Entities ADO.NET includes layered approach Rich object model Coexistence with familiar ADO.NET model with extensions for entities Object Services for insert/update/delete, transactions LINQ for SQL includes straightforward relational mapping Tight integration with programming languages LINQ for DataSets allows queries over DataSet

Satisfy Your Technical Curiosity

Resources The LINQ project ADO.NET - Making the Conceptual Level Real Visual Studio Orcas Forums ADO.NET Team Blog Data Blog Dinesh's Cyberstation mikechampion's weblog Oakleaf Systems Panopticon Central Paul Gielens Thoughts Service System.Data.Objects dev guy Tim Mallalieu's Blog Bob Beauchemin's Blog

Satisfy Your Technical Curiosity

ADO.NET vNext The Entity Data Model, Object Services, and LINQ Bob Beauchemin Director of Developer Resources, SQLskills

Satisfy Your Technical Curiosity