ADO.NET Data Providers

Using Oracle Optimizer Hints in Entity Framework

With each new version of our Devart dotConnect for Oracle ADO.NET Entity Framework provider we pay special attention to improving its performance and configurability. It is pertinent to note some recent improvements: batch updates and flexible customization of Oracle Entity Framework provider behaviour. And now we are glad to present Oracle optimizer hints support in Entity Framework – a new feature for flexible tuning of SQL queries, generated by a user application.

Oracle Optimizer Hints

Oracle supports more than 60 different Oracle optimizer hints. You can see the complete list of Oracle optimizer hints and recommendations on their use in the Oracle Database documentation.

It is better to perform query optimization in external application, such as Devart dbForge Studio for Oracle, or any other tool for Oracle that you prefer. Queries, generated by Entity Framework, can be traced with dbMonitor and then copied and pasted to your SQL development application, where you can evaluate query performance, study execution plan, and choose optimizer hints to use. (more…)

Workflow Foundation Support in dotConnect for Oracle

We continue to extend the capabilities of dotConnect for Oracle with new features. Recently we have started to implement Workflow Foundation support features in dotConnect for Oracle. First we have implemented Oracle Workflow Instant Store support. This feature allows workflows to persist their state information in the Oracle database. dotConnect for Oracle provides the scripts for creating schema to store workflow instance state information in and the OracleWorkflowInstanceStore class that is used to persist workflow instance state information.

Currently only Enabling Persistence for Self-Hosted Workflows that use WorkflowApplication is supported. To use Oracle Workflow Instance Store you need Oracle server 9 or higher. To know how to enable Persistence for Self-Hosted Workflows read our documentation.

Recently we have added the OracleTrackingParticipant class to support Workflow Tracking. OracleTrackingParticipant class. This class allows you to subscribe to tracking records, reflecting key events during the workflow execution, and store these records to an Oracle database. dotConnect for Oracle provides the scripts for creating schema to store TrackingRecord object information. To know how to use the OracleTrackingParticipant read our documentation.

Explanation of Microsoft POCO and Self-Tracking Templates

If a developer needs to introduce certain changes or adjust the behavior of Microsoft’s POCO or Self-Tracking templates of the EntityFramework model or to write a custom template from scratch based on Microsoft’s standard template, he or she will have to learn how these templates work.

When studying Microsoft’s POCO and Self-Tracking generation templates, I have come across significant difficulties in understanding the exact way these templates work, since they are far from being trivial. In this blog article, I shall endeavor to describe their basic functions, explain some points that might be so easy to understand, as well as the structure of the templates. Hopefully, this information will prove useful and time- and effort-saving to all developers who need to work with Microsoft’s generation templates for EntityFramework models.

Using Entity Framework Power Tools CTP1 with Oracle, MySQL, PostgreSQL, and SQLite

Released soon after Entity Framework 4.1, EF Power Tools CTP1 is intended to provide design-time support for the development that involves the use of the Entity Framework Code-First approach. EF Power Tools CTP1 can be downloaded from Visual Studio Gallery. Further in the article, you will find an explanation on how to use Entity Framework Power Tools with Devart dotConnect providers for Oracle, MySQL, PostgreSQL and SQLite, as well as information on Entity Developer that can be used as an alternative to Entity Framework Power Tools.

This article deals with the following:



New Features of Entity Framework Support in dotConnect Providers

In the new version of Devart dotConnect ADO.NET providers for Oracle, MySQL, PostgreSQL and SQLite we have significantly extended functional capabilities of Entity Framework. We maximally fulfilled requests of our users, including those received via our new UserVoice. Our users mainly requested new functional features, more flexibility in behavior and configuration as well as better performance.

Provide your feedback on Entity Framework support in dotConnect data providers at UserVoice!

Go to and share your ideas about Entity Framework support in dotConnect data providers. There you may vote for features that are already in our roadmap, and they will have higher priority in our plans, or you may suggest your own features, and if they will get enough votes, we will include them to the roadmap. Your opinion helps us to make Entity Framework support in dotConnect data providers better and more useful for you.
LinqConnect at UserVoice


Entity Framework Code-First support for Oracle, MySQL, PostgreSQL and SQLite

April 2011 saw the release of a new version of Entity Framework 4.1; this blog article and samples of code contained in it have been correspondingly updated to match the new features that are now available.

The latest versions of Devart dotConnect for Oracle, dotConnect for MySQL, dotConnect for PostgreSQL, and dotConnect for SQLite contain the most recent version of Code-First (Code Only) support that was added in Entity Framework 4.1. One of the primary advantages of the Code-First approach is a higher level of abstraction from the database and the capability to develop applications using the domain-driven design (DDD) approach. (more…)

Entity Framework: Tips and Tricks, part 4

We continue post series about Entity Framework usage. We consider the following questions in this article:


Using Oracle and MS SQL Server in Entity Framework applications simultaneously

Some of our users that are working with Entity Framework need to combine Oracle and Microsoft SQL Server in one application. Entity Framework is a powerful ORM with cross-database possibilities, so there is nothing extraordinary in this task.

However, there is a set of pitfalls and difficulties that are not obvious at first glance.

One of our users, Paul Reynolds, has made a series of posts based on his experience for multiple database support in EF:

Preparing for Multiple Databases
Database Caveats
SSDL Adjustments
Database Agnostic LINQ to Entities

Entity Framework: SQL Generation Enhancements for IN Clause


Devart was the first company who shipped Entity Framework providers for Oracle, MySQL, PostgreSQL, SQLite. And now we remain the leader in supporting new versions and features of Entity Framework.

Continuing to improve support of Entity Framework v4 features, as it was described here, we have optimized generated SQL for our ADO.NET data providers – dotConnect for Oracle, dotConnect for MySQL, dotConnect for PostgreSQL, and dotConnect for SQLite.

SQL generation was significantly improved and simplified in Entity Framework 4. Most of these improvements can be used in third-party providers, but one aspect has been improved only for SqlClient. It is a conversion of IN expression in Entity SQL and Contains method for collections in LINQ to Entities.

New versions of our dotConnect implement this enhancement for both Entity Framework v4 and Entity Framework v1. Our EF v1 users can get optimized SQL for IN Entity SQL expressions, but LINQ to Entities doesn’t support Contains method for collections in EF v1.