ADO.NET Entity Framework

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 28 mars 2021; kontroller kräver 12 redigeringar .

ADO.NET Entity Framework (EF), en objektorienterad dataåtkomstteknologi, är en ORM-lösning ( object-relational mapping ) för .NET Framework från Microsoft . Ger möjlighet att interagera med objekt både genom LINQ i form av LINQ till Entities och med hjälp av Entity SQL. För att underlätta konstruktionen av webblösningar används både ADO.NET Data Services ( Astoria ) och en kombination av Windows Communication Foundation och Windows Presentation Foundation , vilket gör att du kan bygga flernivåapplikationer genom att implementera en av MVC , MVP eller MVVM designmönster .

Historik

ADO.NET Entity Framework släpptes den 11 augusti 2008 som en del av .NET Framework 3.5 Service Pack 1 och Visual Studio 2008 Service Pack 1. VS 2008 inkluderade en EDM Wizard för att omvandla befintliga databaser och en EDM Designer för att redigera genererade modeller eller skapa dem från grunden.

Den 23 juni 2008 , även innan den första versionen släpptes, vid den slutliga finjusteringen av Entity Framework V1, började utvecklingsprocessen för Entity Framework V2.0. [1] Enligt engelska.  Tim Mallalieu , LINQ till SQL och EF Program Manager, i .NET Framework 4.0 kommer Entity Framework att vara den rekommenderade tekniken för att komma åt relationsdatabaser via LINQ . [2]

Den 12 april 2010 introducerades Entity Framework 4.0 som en del av lanseringen av Visual Studio 2010 och .NET Framework 4.0. Senare versioner presenterades separat från ramverket: 4.1 (april 2011), 4.2 (oktober 2011), 4.3 (februari 2012).

Den 11 augusti 2012 introducerades version 5.0.0, som designades för .NET Framework 4.5. Och den 17 oktober 2013 presenterades version 6.0, som släpptes under Apache License v2, och blev därmed ett projekt med öppen källkod.

Version 6.0 släpptes den 17 oktober 2013 [3] och är nu ett projekt med öppen källkod under Apache License v2. I version 6.0 gjordes ett antal förbättringar för att stödja arbetssättet Code First.

Entitet SQL

Entity SQL är ett SQL -liknande språk som låter dig fråga efter konceptuella modeller i Entity Framework [4] .

LINQ till enheter

Detta är ett alternativt LINQ API som används för att komma åt databasen. Den separerar entitetsdataobjektmodellen från den fysiska databasen genom att införa en logisk mappning mellan dem. Så till exempel är relationsdatabasscheman inte alltid lämpliga för att bygga objektorienterade applikationer och som ett resultat har vi en applikationsobjektmodell som skiljer sig väsentligt från den logiska datamodellen, i detta fall används LINQ to Entities, som använder EDM. (Enhetsdatamodell) . Det vill säga, om du behöver lätta på förhållandet mellan din enhetsobjektdatamodell och den fysiska datamodellen, till exempel om dina entitetsobjekt är konstruerade från flera tabeller eller om du behöver mer flexibilitet vid modellering av dina entitetsobjekt, använd LINQ till Entities Archived October 27, 2009 på Wayback Machine .

Tillvägagångssätt till EF

Inledningsvis, från den allra första versionen, stödde Entity Framework metoden Database First, som gjorde det möjligt att generera en edmx-modell från en färdig databas. Denna modell användes sedan för att ansluta till databasen. Senare lades modellen först till. Det tillät dig att manuellt skapa en edmx-modell med hjälp av en visuell redigerare och skapa en databas med den. Från och med 5.0 blir Code First [5] den föredragna metoden . Dess kärna är att modellkoden först skrivs i C#, och sedan genereras en databas från den. I det här fallet används inte längre edmx-modellen.

Anteckningar

  1. Transparens i designprocessen  (engelska)  (länk ej tillgänglig) . Microsoft ADO.NET-teamet Entity Framework Design-blogg (23 augusti 2008). Hämtad 24 november 2008. Arkiverad från originalet 21 mars 2012.
  2. Uppdatering på LINQ till SQL och LINQ till Entities Roadmap  (engelska)  (nedlänk) . Microsoft ADO.NET-teamblogg (29 oktober 2008). Hämtad 24 november 2008. Arkiverad från originalet 21 mars 2012.
  3. EF6 RTM Tillgänglig (inte tillgänglig länk) (17 oktober 2013). Arkiverad från originalet den 30 mars 2014. 
  4. Allmän information om Entity SQL-språket . Hämtad 19 november 2010. Arkiverad från originalet 6 december 2011.
  5. Koda först i Entity Framework . Hämtad 9 januari 2015. Arkiverad från originalet 9 januari 2015.

Länkar

Litteratur