Entity Framework Core support in Devart dotConnect ADO.NET Providers

Entity Framework Core Support in New Versions of Devart ADO.NET Providers!

April 25, 2016

Devart is glad to announce the new versions of our ADO.NET providers - enhanced database connectivity solutions for databases and cloud applications, built over the ADO.NET architecture, that support Entity Framework and LinqConnect ORM solutions. New versions of dotConnect data providers offer you support for Entity Framework Core RC1.

Entity Framework Core Support

Entity Framework Core (formerly Entity Framework 7) is a new version of the Microsoft widely used ORM, which is completely redesigned and intended to be a multi-platform and more lightweight ORM solution that can be used in traditional .NET scenarios, in cloud, on devices, etc.

Currently Entity Framework Core support in our providers is implemented only for the full .NET Framework platform – .NET Framework 4.5.1 and higher.

Since Entity Framework Core is a completely redesigned ORM, which shares little but a name and LINQ support with previous Entity Framework versions, there are a lot of changes in our Entity Framework providers for Entity Framework Core. You can read more about these changes in our blog articles: Entity Framework Core 1 (Entity Framework 7) Support and Migrating Entity Framework 6 projects to Entity Framework Core 1 (Entity Framework 7).

dotConnect for Oracle New Features

The new version of dotConnect for Oracle contains a number of improvements. Here are main of them:

OracleLoader Improvements

Now OracleLoader has the Options property, which allows you to configure data loading behavior: keep constraints enabled during loading data, disable table logging, indexes, and triggers, use its own transaction for loading data, etc. New LoadTable method overloads allow you to load rows from a DataReader, array of DataRow objects or only rows with specific RowState from a DataTable. OracleLoader also now can load data to a specific partition of the partitioned table. A new RowsCopied event allows tracking data loading progress and correct abortion of the operation when necessary.

Performance Counters Support

dotConnect for Oracle now supports performance counters, providing various information about active/inactive/pooled connections, connects per second, etc. You can view this information in Windows Performance Monitor or access it programmatically. Note that they count only connections with the Use Performance Monitor connection string parameter set to true, and there should be at least one application with such connection running in order to see these counters in Windows Performance Monitor.

Transaction Guard Support

New version of dotConnect for Oracle provides advanced support for Transaction Guard with the new OracleLogicalTransaction class and OracleLogicalTransaction property of the OracleConnection class.

Source Edition

Now you can get source access to the OCI mode implementation of all the dotConnect for Oracle runtime classes by purchasing a license for the Professional Edition with Source Code. It has the same features as the Professional Edition and includes the source code for most of the runtime classes and features. Note that it does not include sources for design-time features, like Entity Developer or Package Wizard, and source code for the Direct mode comes in the obfuscated form.

Other Improvements

  • HA (High Availability) Events support
  • Improved OracleLob class
  • Improved OracleXML class
  • Improved OracleString class
  • Improved OracleRef class
  • Improved OracleString class
  • Improved OracleCursor class
  • Improved other structures, representing Oracle data types

The list here is not complete, see dotConnect for Oracle history for the full list of changes and improvements.

Entity Framework Assembly Name Change

In addition to Entity Framework Core support we announce that our Entity Framework-related assemblies are renamed for all the providers that support Entity Framework. Previously each of the providers contained several assemblies with the same name - Devart.Data.<SourceName>.Entity.dll for different Entity Framework versions, which had different revision number. This could cause confusions, so now assemblies for different versions of Entity Framework have different names.

The same is related to the Devart.Data.<SourceName>.Entity.Migrations.dll assembly (present in dotConnect providers for relational databases) and to Devart.Data.<SourceName>.Entity.Spatials.dll assembly (present in dotConnect for Oracle, dotConnect for MySQL, and dotConnect for PostgreSQL. For example, dotConnect for Oracle now has the following assemblies:

  • Entity Framework v1:
    • Devart.Data.Oracle.Entity.EF1.dll
  • Entity Framework v4:
    • Devart.Data.Oracle.Entity.EF4.dll
    • Devart.Data.Oracle.Entity.Migrations.EF4.dll
  • Entity Framework v5:
    • Devart.Data.Oracle.Entity.EF5.dll
    • Devart.Data.Oracle.Entity.Migrations.EF5.dll
    • Devart.Data.Oracle.Entity.Spatials.EF5.dll
  • Entity Framework v6:
    • Devart.Data.Oracle.Entity.EF6.dll
    • Devart.Data.Oracle.Entity.Spatials.EF6.dll
  • Entity Framework Core:
    • Devart.Data.Oracle.Entity.EFCore.dll

Other providers may have less Entity Framework-related assemblies.

You need to add references to the assemblies, corresponding to the Entity Framework version used in your project. Additionally you need to change the Entity Framework provider registration record in the config file to reflect the assembly name change.

Note that the revision number is no longer used to indicate the required Entity Framework version - it is 0 for all the assemblies.

If you need another feature in our providers, visit our forum at UserVoice and vote for suggested features or suggest your own one.

List of Providers with Entity Framework Core Support

ADO.NET Providers for Databases

ADO.NET Providers for Cloud Applications

 

If you wish to provide feedback on the new versions, you can do it in our forums or with contact form. There is also a feedback form in the support zone of every product. We are always glad to hear your comments and take into account your development needs.