New features in the Entity Framework support!

Discussion of open issues, suggestions and bugs regarding Entity Framework support in ADO.NET Data providers
Locked
Devart
Site Admin
Posts: 3974
Joined: Tue 26 Oct 2004 13:51

New features in the Entity Framework support!

Post by Devart » Wed 18 Jul 2012 17:46

Dear users,

We are glad to announce the new features that are available in the Entity Framework support in the latest version.

Full-text Search Functionality Support

New versions of dotConnect data providers for Oracle, MySQL, PostgreSQL, and SQLite support full-text search functionality of the corresponding databases and implement classes for working with full-text search functions in LINQ to Entities. Full-text indexing was supported in Code-First Migrations. The corresponding classes were created to customize CreateTable, CreateIndex, and DropIndex operations. You can find more information on using the full-text search and indexing functionality in our blog articles: Entity Framework Provider Configuration

Entity Framework provider behaviour can now be configured not only in code but also in the config file of the application. The corresponding xsd file is added to the dotConnect installation package to allow using Visual Studio intellisense and validation when editing the corresponding config file sections. Configuring Entity Framework provider through the config file provides you more flexibility than configuring with code because you don't need to recompilo your solution to apply new configuration.

Code-First Support Improvements

Creating indexes for foreign key columns is implemented in Code-First CreateDatabase functionality for Oracle, PostgreSQL, and SQLite (MySQL creates such indexes implicitly by default). The config.DatabaseScript.ForeignKey.IndexCreation option is used to control the creation of these indexes.

A new config.Workarounds.IgnoreDboSchemaName option for configuring Entity Framework providers is added. This option is for ignoring the dbo schema name and is enabled by default when using Code-First Migrations, thus allowing you to use Code-First Migrations out-of-the-box without the need to add or remove any conventions manually in your solutions. This also allows you to specify the schema (database) for a table in Code-First Migrations.

In dotConnect for Oracle we have implemented some specific functionality for Code-First Migrations. The ColumnTypeCasingConventionCompatibility convention is now set to true by default. We have also added the TruncateLongDefaultNames option to truncate the long default names of indexes, primary keys, foreign keys, triggers, and sequences generated by Code-First Migrations. These changes allow you to use not only code-based Code-First Migrations, but also automatic Code-First Migrations with dotConnect for Oracle.

Here is the complete list of the new features that are available in the Entity Framework support in the latest version:
  • The support of the full-text search functionality is implemented (Oracle, MySQL, PostgreSQL, SQLite)
  • The possibility of setting configuration options via the application config file is implemented (Oracle, MySQL, PostgreSQL, SQLite)
  • The Devart.Data.<database>.Entity.xsd file is added to the installation in order to simplify setting and validating the application config file settings when using the XML Editor (Oracle, MySQL, PostgreSQL, SQLite)
  • Code-First Migrations now supports specifying which schema (database) a table belongs to (Oracle, MySQL, PostgreSQL, SQLite)
  • The config.Workarounds.IgnoreDboSchemaName configuration option is added. The option is automatically set to True, if Code-First (Migrations) EF v4.x/5.x is used (Oracle, MySQL, PostgreSQL, SQLite)
  • CASE generation is improved (Oracle, MySQL, PostgreSQL, SQLite)
  • The behaviour is changed: in case of using Code-First (Migrations) EF v4.x/5.x the schema name 'dbo' will be ignored by default (Oracle, MySQL, PostgreSQL, SQLite)
  • Creating indexes for FK columns in Code-First CreateDatabase functionality is implemented (Oracle, PostgreSQL, SQLite)
  • The config.DatabaseScript.ForeignKey.IndexCreation configuration option is added, default value is True (Oracle, PostgreSQL, SQLite)
  • The MySqlTextFunctions class for working with full-text search functions in LINQ to Entities is added (MySQL)
  • The MySqlCreateIndexConfiguration class for creating full-text indexes in CreateIndex operation in Code-First Migrations is added (MySQL)
  • The MySqlCreateTableConfiguration class for customizing the CreateTable operation (setting storage engine) in Code-First Migrations is added (MySQL)
  • The config.DmlOptions.InsertNullBehaviour feature with the InsertNull (default) and Omit options is implemented (Salesforce)
  • The support of Entity Data Model Wizard (Database-First) in Visual Studio 2008 SP1/2010/2010 SP1/11 Beta/2012 RC is implemented (SQLite)
  • The support of Generate Database Wizard (Model-First) in Visual Studio 2010/2010 SP1/11 Beta/2012 RC is implemented (SQLite)
  • The support of Visual Studio LightSwitch 2011 (v1) and LightSwitch in Visual Studio 11 Beta/2012 RC (v2) is implemented (SQLite)
  • The SQLiteTextFunctions class for working with full-text search functions in LINQ to Entities is added (SQLite)
  • The SQLiteCreateTableConfiguration class for customizing the CreateTable operation (creating full-text search table) in Code-First Migrations is added (SQLite)
  • The OracleTextFunctions class for working with Oracle Text functions in LINQ to Entities is added (Oracle)
  • The OracleCtxDdlPackage class for working with Oracle Text stored procedures of the CTX_DDL package is added (Oracle)
  • The OracleCreateIndexConfiguration class for customizing the CreateIndex operation in Code-First Migrations is improved (Oracle)
  • The OracleDropIndexConfiguration class is added for customizing the DropIndex operation (deleting Oracle Text indexes) in Code-First Migrations (Oracle)
  • The existing configuration classes for customizing the Code-First Migrations operations are renamed - the "Oracle" prefix is added (for example, the CreateTableConfiguration class was renamed to OracleCreateTableConfiguration); derived classes with the old names are added for backward compatibility (Oracle)
  • The config.DatabaseScript.ForeignKey.IndexTablespace configuration option is added to provide the possibility of setting the TABLESPACE, in which the index, created for the columns being parts of the foreign key, should be placed (Oracle)
  • The option of setting ConcurrencyCheck for CLOB/NCLOB columns (for better support of LightSwitch) is implemented
  • Overloads for the ToChar/ToNchar methods of the OracleFunctions class are added (Oracle)
  • The ColumnTypeCasingConventionCompatibility configuration option is moved from Workarounds to CodeFirstOptions (now it is config.CodeFirstOptions.ColumnTypeCasingConventionCompatibility). For the backward compatibility a wrapper property remains in Workarounds (Oracle)
  • The config.CodeFirstOptions.UseNonUnicodeStrings configuration option (default value is False) is added in order to treat string properties without an explicitly specified server data type, as non-unicode (Oracle)
  • The config.CodeFirstOptions.TruncateLongDefaultNames configuration option is added (default value is False) to provide the possibility of truncating long default names of indexes, primary keys, foreign keys, triggers, and sequences generated by Code-First Migrations (Oracle)
  • The overloaded stored procedures and functions are supported in Entity Framework runtime (Oracle)
  • The behaviour is changed: the ColumnTypeCasingConventionCompatibility configuration option is automatically set to True for EF v4.3.x & 5.x. If you use DbContext with XML mapping (in EF v4.1 & v4.2), from now on you should explicitly set ColumnTypeCasingConventionCompatibility=False (Oracle)
  • The bug with inserting data into MigrationHistory table when working with Oracle 10g is fixed (Oracle)
  • The PgSqlTextFunctions class for working with full-text search functions in LINQ to Entities is added (PostgreSQL)
  • The support of the TSVECTOR and TSQUERY data types is implemented (PostgreSQL)
  • The PgSqlCreateIndexConfiguration class for creating full-text indexes in CreateIndex operation in Code-First Migrations is added (PostgreSQL)
  • The SimilarTo overloaded methods are added to the PgSqlFunctions class to provide support of the SQL SIMILAR TO statement (PostgreSQL)
Devart development team
http://www.devart.com/dotconnect/entityframework.html

Locked