04 - [ASP.NET Core] Entity Framework Core

Click here to load reader

  • date post

    21-Feb-2017
  • Category

    Technology

  • view

    50
  • download

    2

Embed Size (px)

Transcript of 04 - [ASP.NET Core] Entity Framework Core

Prsentation PowerPoint

Entity Framework Core

Comment sappelle le machin en question ?Entity Framework Everywhere

Entity Framework 7 (EF7)

Entity Framework Core (EF Core)

2

1Cest quoi, EF Core ?2EF Core vs EF63Dmos

Entity Framework 3.5 SP1Entity Framework 4Entity Framework 4.xEntity Framework 5.xEntity Framework 6.xEntity Framework 6.2Entity Framework Core

Runtime : NuGetTooling : Microsoft Download Center(Dernire version incluse dans Visual Studio)

Nouveaux composants de runtime : NuGetComposants historiques de runtime : .NETTooling : livre avec Visual Studio

Composants de runtime : .NETTooling : livr avec Visual StudioComment est dploy Entity Framework ?

4

De nouvelles plateformes .NET FRAMEWORK .NET CORE XAMARIN

APPMODELS

BASELIBRARIESBase Class Library Core LibraryMono Class LibraryASP.NETWindows FormsWPFUWPASP.NET Core*iOSAndroid

CompilersLanguagesRuntime componentsCOMMON INFRASTRUCTUREOS XEF CoreEF6.x

De nouveaux providersEF Core nest plus vraiment un ORM, puisquil ne gre plus seulement le monde relationnel.Microsoft.EntityFrameworkCoreBases relationnellesSQL ServerPostGreSQLSQLLiteSQLCompactNoSQLRedisAzure Table StorageIn memoryServices communs toutes / une majorit de plateformesMtadonnesUnit of WorkRepositoryChange trackingGnration de SQLNB : EF 1.0 ne comprend que les providers relationnels et in memory

Lgret et extensibilitUne API de haut niveau base sur un coeur modulaireDbContext et DbSet = mtadonnes, change tracking, gnration de SQL, unit of work et repository

EF Core est dvelopp sous la forme dune collection de servicesAssemblage suivant les principes de linjection de dpendancesChaque service est facile utiliser, remplacer et tendre

Consommation faible en ressources mmoire et CPUCest assez important quand on pense devices mobiles et cloud

Mcanisme pay-per-play : jutilise uniquement ce dont jai besoin

Je passe trs rapidement sur cette liste. On les regardera en detail dans les demos.7

EF Core vs EF6EF Core tient compte de son historique :LAPI de haut niveau ne change pas fondamentalement par rapport EF6Les choses ne changent pas pour le simple fait de changer

mais nest pas contraint par ce dernierRcriture complteLe cur na plus rien voir avec lancienToutes les fonctionnalits dEF6 ne seront pas portes

EF Core vs EF6EF6 est stable et mr8 ans depuis la v1.0Un cosystme de providers richeContinuera dtre support et maintenu

EF Core est une vraie v1.0Couverture fonctionnelle encore incomplteSa premire version ne vient quavec quelques providers

EF Core vs EF6EF6 continue dtre un bon choix pour beaucoup dapplications.

Rflchissez bien avant dadopter EF CoreDes fonctionnalits non-encore implmentes (mapping vers des procdures stockes, donnes spatiales, visualisation graphique du modle)La base de code est rcente ! Le traducteur Linq > SQL nest pas encore au niveau dEF6.

Passer dEF6 vers EF Core est une migration, pas une mise jourLes projets simples seront faciles migrerCertaines API ont radicalement changAttention aux diffrences de comportement entre API nommes de faon similaire

Dmos

EF Core 101

Dmos

Performances amliores

Dmos

API de mtadonnes simplifie

Dmos

ExtensibilitTop Level APIDbContext, DbSet, ChangeTracker, Database, etc.Core ServicesStateManager, CompiledQueryCache, etc.Database Provider ServicesSqlServerTypeMapper, SqlServerSqlGenerationHelper, etc.

Dmos

Un modle, plusieurs plateformes

Dmos

Un modle, plusieurs bases de donnes

Dmos

Amlioration de la gnration de SQL