Entity Framework 7 neexistuje! Ať žije Entity Framework Core!
Vývoj ASP.NET Core a EF Core trval Microsoftu skutečně dlouhou dobu. Restart platformy, o kterém se tolik mluvilo a mluví byl dost živelný a především chaotický. Když jsem se zpětně díval na články z posledních dvou let, není pochyb o tom, že ani hoši z vývojářského týmu netušili kam to všechno dojde. Myslím, že stojí za to vnést do chaosu trochu světla a objasnit titulek mého článku. Dovolím si navázat na můj poslední článek o neexistenci MVC 6 a demystifkovat ještě jeden blud o Entity Frameworku 7.
👨🎓 Nové školení EF Core pro rok 2020
Školení nejnovější verze Entity Framework Core přímo u Vás ve firmě. Naučíte se používat EF Core v celém životním cyklu aplikace od vytvoření modelu, změn v podobě migrací až po dotazování a profilování databázových dotazů.Více o školení Entity Framework Core
Historie Entity Frameworku
Entity Framework tak jak jej známe si prošel dlouholetou historií. Při svém zrodu byl nedílnou součástí .NET Frameworku a vývojáři jej vnímali spíše jako alternativu k LinqToSql. Ve své verzi 4.1 se oddělil od .NET Frameworku a začal si žít vlastním životem v podobě NuGet balíčku. Měnil se i přístup k vývoji aplikací. Drtivá většina databází byla dříve navrhována odděleně od aplikačního kódu a samotný model byl generován metodou Database First. Tento přístup byl v posledních letech překonán a dnes je preferovanou cestou přístup Code First. Právě Code First s sebou nese celou řadu výhod a vývojáři tento přístup rychle adoptovali.
Entity Framework 7
Když se Microsoft rozhodl přepsat Entity Framework, bylo jasné, že tím hlavním podporovaným přístupem bude právě Code First. Před dvěma lety se ještě mluvilo o ASP.NET 5 a Entity Framework 7. Zkrátka plán byl přeskočit pár desetinných čísel a dát najevo, že přichází velká změna. Jenomže ono nešlo změnu, ale o kompletní přepis technologií. A nová technologie si zaslouží nový název. Proto došlo po nějakém čase k přejmenování:
ASP.NET 5 -> ASP.NET Core 1.0 Entity Framework 7 -> Entity Framework Core 1.0
Může se to zdát jako jednoduchý krok, jenomže už v té době se o ASP.NET 5 a Entity Frameworku 7 téměř rok psalo. Ten rok stačil na to, aby vzniklo podhoubí, ze kterého ještě dnes vznikají nesmyslné články. Především vývojáři, kteří tuto změnu před lety zachytili ale neprošli upgradem žijí v mylné představě, že Entity Framework 7 skutečně existuje. A není se čemu divit. Nároky na funkční vybavenost ORM jsou obrovské a EF Core je stále pár kroků za očekáváním vývojářů. To je důvod, proč se o EF Core tolik nemluví a proč si stále tolik lidí myslí, že existuje nebo bude existovat Entity Framework 7.
A on nebude!
Oficiální název ORM je Entity Framework Core 1.1 (jinak také EF Core 1.1) a už nyní se pracuje na nové verzi EF Core 2.0, která se dočká celé řady zajímavých funkcí.