16
Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE [email protected] http://blogs.msdn.com/mitsu http:// blogs.msdn.com/mitsufu Entity Framework 4

Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE [email protected]

Embed Size (px)

Citation preview

Page 1: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

Mitsuru FURUTARelations techniques développeursMicrosoft [email protected]://blogs.msdn.com/mitsuhttp://blogs.msdn.com/mitsufu

Entity Framework 4

Page 2: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

AgendaIntroduction à Entity FrameworkMappingEntity Framework 4

Les nouveautésModel firstScénario POCO

TemplatesConclusion

Page 3: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

Pourquoi le mapping objet-relationnel ?Conception de base de données et conception objet proches mais différentes Gain de productivité

Définition de modèlesScénarii de génération de codeApplication de patterns/templates

RequêtageSql client versus procédures stockées

Performance, sécuritéServeur vs code : intégrité et versions de la base ou du code..

Requêtage sur le modèle indépendamment de la base de données via LINQ (entre autre)

Introduction

Page 4: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

L’approche Entity FrameworkArchitecture orientée modèle

Indépendance de la source de donnéesAbstraction de la persistanceRequêtage directement sur le modèlePuissant mapping de transformationFacilité de maintenance accrue et sensibilité aux évolutions réduite

ImplémentationDéfinition du modèle : Entity Data ModelRequêtage sur le modèle:

Esql, support de Linq

Introduction

Page 5: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

Architecture d’Entity Framework

Page 6: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

Entity Data Model

Relational

Database

DatabaseObjectsSchema

Storage Model

*.MSL*.SSD

L

Map

OO Classes

Entity Data Model

Schema

Conceptual Model

*.CSDL

Page 7: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

DémoeSql

Page 8: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

DémoMapping, many-to-many, héritage, complexTypes

Page 9: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

Intégration des FKLazy LoadingModel FirstPOCOAmélioration du designerFonctions CSDLAmélioration des requêtes SQL généréesAjouts de règles de validations au niveau du modèle…

Entity Framework 4

Page 10: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

DémoModel First

Page 11: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

DémoPOCO

Page 12: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

DémoLazzy loading

Page 13: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

Template qui existe dans Visual Studio depuis 2005 mais « caché »Microsoft fournit des API permettant d’accéder aux Metadonnées de l’EDMMicrosoft fournit les templates de génération d’entités et de contexte se basant sur ces métadonnéesPossibilité de customiser soi-même ces templates

Template T4 : Utilisation de l'EDM pour générer le code

Page 14: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

DémoTemplate T4

Page 15: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com

Famille LinqWCF Ria ServicesADO.Net Data ServicesASP.Net Dynamic Data

Un écosystème d’autres frameworks

Page 16: Mitsuru FURUTA Relations techniques développeurs Microsoft FRANCE mitsufu@microsoft.com