ADO.NET Entity Framework Support

The latest ADO.NET evolution focuses on raising the level of abstraction from the logical (relational) level to the conceptual (entity) level. For this purpose Microsoft introduces the Entity Framework, designed to simplify data - object conversion and embed data access queries into program code.

The Devart dotConnect product line supports the ADO.NET Entity Framework for Oracle, MySQL, PostgreSQL, SQLite, DB2, and Salesforce. dotConnect data providers support all the Entity Framework versions - Entity Framework v1, v4, v5, and v6.

Benefits



Entity Framework features:

Support for LINQ to Entities and Entity SQL
 


dotConnect data providers offer the most complete support for LINQ to Entities and Entity SQL.

Entity Framework Canonical Functions support


dotConnect data providers support most of the Entity Framework Canonical Functions for Oracle, MySQL, PostgreSQL, SQLite, and DB2.

 

Dynamic Database Creation and Deletion Support


dotConnect data providers support Dynamic database creation and database deletion for Entity Framework v1, v4.x, v5, and v6. They also support Code-First Migrations for Entity Framework 4.3 and higher.

Entity Framework Spatials Support
 


dotConnect data providers for Oracle, MySQL, and PostgreSQL support Entity Framework Spatials functionality for Entity Framework v5 and v6.



Database-specific features:

Wide Support for Database Types


dotConnect product line offers wide support for database types including Oracle CURSORs and SDO_GEOMETRY, MySQL geometry, PostgreSQL PostGIS geometry and geography data types.

Wide Support for Stored Procedures


dotConnect product line offers wide support for user-defined stored procedures and functions. *

 

Wide Support for Database-specific Functions


Database-specific system functions of Oracle, MySQL, PostgreSQL, SQLite, and DB2 can be used in LINQ to Entities and Entity SQL.

Full-Text Search Suport


dotConnect for Oracle, MySQL, PostgreSQL, and SQLite support database full-text search functionality in LINQ to Entities and Entity SQL queries.



Performance:

Batch Updates


Our providers support configurable batch updates, grouping several INSERT/UPDATE/DELETE statements into one SQL block, which increases SaveChanges() performance substantially, because of reducing number of server calls and producing more compact SQL code.

Light and Optimized SQL


A number of SQL optimizations allows generating high-performant SQL. Additionally, you may optionally disable SQL formatting to reduce SQL statement size. dotConnect for Oracle supports Oracle Optimizer Hints for further performance improvements.



Development Approaches

ado.net entity framework database-first

Database-First


You may generate an Entity Framework model, based on an existing database, and then update the model if the database was changed. This can be done with Entity Data Model Wizard and Update Model Wizard (or with Attach Data Source wizard for LightSwitch applications) in Visual Studio and with our own ORM model designer - Entity Developer, which is supplied with the providers.

ado.net entity framework model-first

Model-First


You may create a model in Visual Studio 2010, 2012, or 2013 Entity Model Designer and then generate database DDL script with Create Database Wizard. The same can be done with Entity Developer in Visual Studio 2008, 2010, 2012, and 2013. Entity Developer also allows updating database according to the model changes.

ado.net entity framework code-first

Code-First


You may create a set of POCO classes, set up mapping with attributes or fluent mapping, and specify the database creating/deleting and filling with initial data. Our providers support this approach completely and allow additional tweaking. Reverse engineer Code-First is also supported via Entity Developer's DbContext template, generating POCO classes and Code-First mapping for an existing database.



Extensions of EDM

Features Entity Developer EDM designer
Advanced mapping support with all kinds of inheritances Yes No
Database-First approach support with preserving manual mapping and storage changes while updating a model from a database Yes No
Model-First approach support with synchronization of storage part and database with the model Yes No
Advanced large model support splitting model into several diagrams Yes Partial support
Robust and easy-to-use drag 'n' drop mechanism Yes No
Editable storage model Yes No
Advanced CUD-mapping with stored functions support Yes No
Function import and code generation with support for stored routines, returning entity collections and collections of complex types Yes Partial support
Background design-time model validating and testing the model with Entity SQL and LINQ to Entities queries Yes No
Code generation with support for design-time custom attributes of model objects Yes No

* Some of the advanced features are available only in Entity Developer

** EDM designer supports this functionality since Visual Studio 2012.

Visit our Entity Developer vs Entity Data Model Designer page to get more information on Entity Developer benefits.