- ADO.NET Entity Framework
-
ADO.NET Entity Framework (EF) — объектно-ориентированная технология доступа к данным, является object-relational mapping (ORM) решением для .NET Framework от Microsoft. Предоставляет возможность взаимодействия с объектами как посредством LINQ в виде LINQ to Entities, так и с использованием Entity SQL. Для облегчения построения web-решений используется как ADO.NET Data Services (Astoria), так и связка из Windows Communication Foundation и Windows Presentation Foundation, позволяющая строить многоуровневые приложения, реализуя один из шаблонов проектирования MVC, MVP или MVVM.
Содержание
История
Релиз ADO.NET Entity Framework состоялся 11 августа 2008 года в составе .NET Framework 3.5 Service Pack 1 и Visual Studio 2008 Service Pack 1. В VS 2008 вошёл EDM Wizard для реверс-инжиниринга существующих баз данных и EDM Designer для редактирования сгенерированных моделей или создания их с нуля.
23 июня 2008 года, ещё до релиза первой версии, на стадии финальной доводки Entity Framework V1, начался процесс разработки Entity Framework V2.0.[1] По словам англ. Tim Mallalieu, программного менеджера LINQ to SQL и EF, в .NET Framework 4.0 именно Entity Framework станет рекомендуемой технологией доступа к реляционным СУБД посредством LINQ.[2]
12 апреля 2010 года в составе релиза Visual Studio 2010 и .NET Framework 4.0 был представлена Entity Framework 4.0. Позже уже отдельно от фреймворка были представлены версии: 4.1 (апрель 2011), 4.2 (октябрь 2011), 4.3 (февраль 2012).
Архитектура
Entity Data Model
Schema definition language
Entity SQL
Entity SQL представляет собой язык, подобный языку SQL, который позволяет выполнять запросы к концептуальным моделям в Entity Framework[3].
LINQ to Entities
Это альтернативный интерфейс LINQ API, используемый для обращения к базе данных. Он отделяет сущностную объектную модель данных от физической базы данных, вводя логическое отображение между ними. Так например, схемы реляционных баз данных не всегда подходят для построения объектно-ориентированных приложений и в результате мы имеем объектную модель приложения существенно отличающуюся от логической модели данных, в этом случае используется LINQ to Entities, который использует модель EDM (Entity Data Model). То есть, если вам нужно ослабить связь между вашей сущностной объектной моделью данных и физической моделью данных, например, если ваши сущностные объекты конструируются из нескольких таблиц или вам нужна большая гибкость в моделировании ваших сущностных объектов используйте LINQ to Entities.
Примечания
- ↑ Transparency in the design process (англ.). Microsoft ADO.NET team Entity Framework Design blog (23.08.2008). Архивировано из первоисточника 21 марта 2012. Проверено 24 ноября 2008.
- ↑ Update on LINQ to SQL and LINQ to Entities Roadmap (англ.). Microsoft ADO.NET team blog (29.10.2008). Архивировано из первоисточника 21 марта 2012. Проверено 24 ноября 2008.
- ↑ Общие сведения о языке Entity SQL
Литература
- Julia Lerman Programming Entity Framework. — 2nd Edition. — O’Reilly, 2010. — 920 p. — ISBN 0-596-80726-0
- Эндрю Троелсен Язык программирования C# 2010 и платформа .NET 4.0 = Pro C# 2010 and the .NET 4.0 Platform, 5ed. — М.: «Вильямс», 2010. — С. 1392. — ISBN 978-5-8459-1682-2
- Кристиан Нейгел, Билл Ивьен и др. C# 4.0 и платформа .NET 4 для профессионалов = Professional C# 4 and .NET 4. — М.: «Диалектика», 2010. — С. 1440. — ISBN 978-5-8459-1656-3
Для улучшения этой статьи желательно?: - Викифицировать статью.
- Переработать оформление в соответствии с правилами написания статей.
API и фреймворки Microsoft Графика Desktop Window Manager · Direct2D · Direct3D (extensions) · GDI / GDI+ · WPF · Windows Color System · Windows Image Acquisition · Windows Imaging Component Аудио DirectMusic · DirectSound · DirectX plugin · XACT · Speech API · XAudio2 Мультимедиа DirectX (Media Objects · Video Acceleration) · DirectInput · DirectShow · Image Mastering API · Managed DirectX · Media Foundation · XNA · Windows Media · Video for Windows Web MSHTML · RSS Platform · JScript · VBScript · BHO · XDR · SideBar Gadgets Доступ к данным Data Access Components · Extensible Storage Engine · ADO.NET · ADO.NET Entity Framework · Sync Framework · Jet Engine · MSXML · OLE DB · OPC Сеть Winsock (LSP) · Winsock Kernel · Filtering Platform · Network Driver Interface Specification · Windows Rally · BITS · P2P API · MSMQ · MS MPI · DirectPlay Коммуникации Messaging API · Telephony API · WCF Win32 console · Windows Script Host · WMI (extensions) · PowerShell · Task Scheduler · Offline Files · Shadow Copy · Windows Installer · Error Reporting · Event Log · Common Log File System Компонентная модель COM · COM+ · ActiveX · Distributed Component Object Model · .NET Framework Библиотеки Base Class Library (BCL) · Microsoft Foundation Classes (MFC) · Active Template Library (ATL) · Windows Template Library (WTL) Драйверы устройств Windows Driver Model · Windows Driver Foundation (KMDF · UMDF) · WDDM · NDIS · UAA · Broadcast Driver Architecture · VxD Безопасность Crypto API (CAPICOM) · Windows CardSpace · Data Protection API · Security Support Provider Interface (SSPI) .NET ASP.NET · ADO.NET · Base Class Library (BCL) · Remoting · Silverlight · TPL · WCF · WCS · WPF · WF Программное обеспечение EFx Factory · Enterprise Library · Composite UI · CCF · CSF IPC MSRPC · Dynamic Data Exchange (DDE) · Remoting · WCF Доступность Active Accessibility · UI Automation Текст и многоязная
поддержкаDirectWrite · Text Services Framework · Text Object Model · Input method editor · Language Interface Pack · Multilingual User Interface · Uniscribe Категории:- .NET Framework
- Интерфейсы доступа к данным
Wikimedia Foundation. 2010.