May 17, 2011
Devart is glad to announce the release of the new versions of ADO.NET data providers,
enhanced database connectivity solutions, built over the ADO.NET architecture, that
support Entity Framework and LinqConnect ORM solutions. New versions of dotConnect
data providers offer you new greatly improved Entity Developer
3.50, significantly enhanced Entity Framework support, and many other improvements.
All dotConnect providers now have TransactionStateChanging and TransactionStateChanged
events in their Connection classes; these events allow you to perform actions when
the transaction starts or finishes any operation. dotConnect for MySQL, Oracle,
PostgreSQL, and SQLite now have policy files for their Devart.Data.<Provider>.Entity
Oracle Workflow Instance Store and support for Oracle TimesTen database is implemented
in dotConnect for Oracle. MySqlDataReader class now has GetUInt16(), GetUInt32(),
GetUInt64(), and GetSByte() methods. In LinqConnect eager loading in case the related
entities collection is referenced in the select clause of the query was implemented.
In the new versions of Devart dotConnect ADO.NET providers for Oracle, MySQL, PostgreSQL,
and SQLite we have significantly extended functional capabilities of Entity Framework
by maximally fulfilling requests made by our users, including those received via
UserVoice. Our users mainly requested new functional features, more flexibility
in behavior and configuration as well as better performance.
To increase performance, we provide the functionality of flexibly configured Batch
Updates, give our users the possibility of configuring individual aspects
of INSERT/UPDATE/DELETE operations and make it possible to disable SQL-formatting.
To make software more flexible, we enable the users to additionally configure the
behavior for dynamic database creation/deletion, which is quite important after
the release of EF 4.1 (Code-First).
Besides, as a workaround for the commonest situations, the users can exclude the
schema (database) name from generated DDL and DML SQL commands and disable
To facilitate the process of development and to cease using simple INSERT triggers
that set values of Identity columns, we make it possible to use database-specific
functions as Default Value when inserting records into tables.
The LINQ to Entities string column search functionality has been extended - now
you may call the full-featured database-specific LIKE function instead of using
three different methods StartsWith(), Contains(), and EndsWith().
We have implemented the possibility of saving manually defined StoreGeneratedPattern
of columns in the model's storage part, so that now the users of dotConnect for
Oracle do not have to set StoreGeneratedPattern manually every time Update from
Database Wizard is run in Visual Studio 2008/2010.
In dotConnect for Oracle we have added a possibility to change the default NUMBER
mapping to .NET types when creating an Entity Framework model with Entity Data Model
Wizard. The NUMBER mapping can be set with the NumberMappings connection string
our blog article to read about our new Entity Framework support features.
We are intent on further development of our Entity Framework to provide more functionality
and flexibility to our users. We are looking forward to receiving your comments
on our forum or through
the feedback page. You
can also suggest new functionality on
Now, it is possible to add more than one template to the model, register added templates
within the model and store them either in the Entity Developer resources, or in
the specified folder, or together with the model itself. The so-called "shared"
templates can now be easily shared between different models.
Another new feature in the area of template use and management is the possibility
to exclude templates from the process of code generation by setting their "enabled"
property to "false". This greatly improves the flexibility of the code
Template code can be easily edited in the improved built-in T4 editor. Our T4 editor
features extensive intellisense functionality, syntax highlighting, navigation to
definitions and declarations of objects and members, present in the template file
or included files, multilevel template inclusion and some others.
The range of templates available in Entity Developer is further extended with the
POCO template with XML mapping for LinqConnect and the POCO, Self-Tracking, DbContext,
and Fluent mapping templates for Entity Framework.
Additionally, the Entity Developer application now features, alongside the FilePerClass
option, the EntitiesOutput and ContextOutput functionality that allows redirecting
code generation for entities and appropriate contexts to any folder or project.
Presently, Entity Developer makes it possible for developers to exclude classes
from being overwritten at each generation; in multi-layered application development,
this allows creating sets of sample classes that can later be modified as needed.
The use of extended properties defined directly in template code makes the process
of code generation much more flexible. The developer can customize the set of properties
of any element in the model by declaring extended properties both in template code
and in model properties. For example, you can add the Generate property to every
class and then exclude some classes from generated code by setting this property
in the designer.
Starting with this version of Entity Developer, developers can select attributes
from all available assemblies, set values of attribute parameters and assign attributes
to classes, properties or contexts of their model. Assigned attributes and the values
of their parameters will be present in generated code. For example, the System.ComponentModel.DataAnnotation
attributes can be used for validation.
Lastly, Entity Developer now has runtime support for literals specified in the 'Default
Value' entity field property for LinqConnect models.
If you need another feature in Entity Developer or LinqConnect, visit our forum
at UserVoice and vote for suggested features
or suggest your own one.
If you wish to provide feedback on the new versions, you can do it on 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 accommodate your development needs.