ADO.NET Entity Framework

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 28. marts 2021; checks kræver 12 redigeringer .

ADO.NET Entity Framework (EF), en objektorienteret dataadgangsteknologi, er en ORM-løsning ( object-relational mapping ) til .NET Framework fra Microsoft . Giver mulighed for at interagere med objekter både via LINQ i form af LINQ til Entities og ved at bruge Entity SQL. For at lette konstruktionen af ​​webløsninger bruges både ADO.NET Data Services ( Astoria ) og en kombination af Windows Communication Foundation og Windows Presentation Foundation , som giver dig mulighed for at bygge multi-level applikationer ved at implementere en af ​​MVC , MVP eller MVVM design mønstre .

Historie

ADO.NET Entity Framework blev udgivet den 11. august 2008 som en del af .NET Framework 3.5 Service Pack 1 og Visual Studio 2008 Service Pack 1. VS 2008 indeholdt en EDM Wizard til at reverse engineering af eksisterende databaser og en EDM Designer til at redigere genererede modeller eller skabe dem fra bunden.

Den 23. juni 2008 , selv før udgivelsen af ​​den første version, på stadiet med den endelige finjustering af Entity Framework V1, begyndte udviklingsprocessen af ​​Entity Framework V2.0. [1] Ifølge engelsk.  Tim Mallalieu , LINQ til SQL og EF Program Manager, i .NET Framework 4.0 , vil Entity Framework være den anbefalede teknologi til at få adgang til relationelle databaser gennem LINQ . [2]

Den 12. april 2010 blev Entity Framework 4.0 introduceret som en del af udgivelsen af ​​Visual Studio 2010 og .NET Framework 4.0. Senere versioner blev præsenteret separat fra rammen: 4.1 (april 2011), 4.2 (oktober 2011), 4.3 (februar 2012).

Den 11. august 2012 blev version 5.0.0 introduceret, som var designet til .NET Framework 4.5. Og den 17. oktober 2013 blev version 6.0 præsenteret, som blev udgivet under Apache License v2, og blev derved et open source-projekt.

Version 6.0 blev udgivet den 17. oktober 2013 [3] og er nu et open source-projekt under Apache License v2. I version 6.0 blev der foretaget en række forbedringer for at understøtte Code First måden at arbejde på.

Entitet SQL

Entity SQL er et SQL -lignende sprog , der giver dig mulighed for at forespørge på konceptuelle modeller i Entity Framework [4] .

LINQ til enheder

Dette er en alternativ LINQ API, der bruges til at få adgang til databasen. Den adskiller enhedsdataobjektmodellen fra den fysiske database ved at indføre en logisk kortlægning mellem dem. Så for eksempel er relationelle databaseskemaer ikke altid egnede til at bygge objektorienterede applikationer, og som et resultat har vi en applikationsobjektmodel, der adskiller sig væsentligt fra den logiske datamodel, i dette tilfælde bruges LINQ to Entities, som bruger EDM. (Enhedsdatamodel) . Det vil sige, hvis du har brug for at slække på forholdet mellem din enhedsobjektdatamodel og den fysiske datamodel, for eksempel hvis dine enhedsobjekter er konstrueret ud fra flere tabeller, eller du har brug for mere fleksibilitet i modelleringen af ​​dine enhedsobjekter, skal du bruge LINQ til Entities Archived October 27, 2009 på Wayback Machine .

Tilnærmelser til EF

Oprindeligt, fra den allerførste version, understøttede Entity Framework Database First-tilgangen, som gjorde det muligt at generere en edmx-model fra en færdiglavet database. Denne model blev derefter brugt til at oprette forbindelse til databasen. Senere blev Model First-tilgangen tilføjet. Det gav dig mulighed for manuelt at oprette en edmx-model ved hjælp af en visuel editor og oprette en database ved hjælp af den. Startende med 5.0 bliver Code First [5] den foretrukne tilgang . Dens essens er, at modelkoden først skrives i C#, og derefter genereres en database ud fra den. I dette tilfælde bruges edmx-modellen ikke længere.

Noter

  1. Gennemsigtighed i designprocessen  (engelsk)  (link ikke tilgængeligt) . Microsoft ADO.NET team Entity Framework Design blog (23. august 2008). Hentet 24. november 2008. Arkiveret fra originalen 21. marts 2012.
  2. Opdatering om LINQ til SQL og LINQ til Entities Roadmap  (engelsk)  (downlink) . Microsoft ADO.NET teamblog (29. oktober 2008). Hentet 24. november 2008. Arkiveret fra originalen 21. marts 2012.
  3. EF6 RTM tilgængelig (ikke tilgængeligt link) (17. oktober 2013). Arkiveret fra originalen den 30. marts 2014. 
  4. Generel information om Entity SQL-sproget . Hentet 19. november 2010. Arkiveret fra originalen 6. december 2011.
  5. Kode først i Entity Framework . Hentet 9. januar 2015. Arkiveret fra originalen 9. januar 2015.

Links

Litteratur