Entity Framework Limitations
- Last Updated: April 16, 2026
- 2 minute read
- ADO.NET
- Documentation
The DB2 and Oracle Entity Framework data providers support .NET Framework 4.0 or higher and ADO.NET Entity Framework 4.1 and 4.2 features such as Code First and Model First, and ADO.NET Entity Framework 4.3 features such as Code First Migrations, and ADO.NET Entity Framework 5.0 features such as support for Enumerations and Table functions.
The Sybase Entity Framework data providers can be used with applications that target the .NET Framework 4.0 or higher. However, they currently do not support most of the functionality introduced in .NET Framework 4.0 or higher and Entity Framework 4.1 and 4.2.
For the most current information on functionality supported, refer to these resources on the Progress DataDirect Web site:
Model First Issues
The Sybase Entity Framework data provider currently does not support Model First. They do not appear in the drop-down list for the DDL Generation Template property in the ConceptualEntityModel Properties window, as shown in the following figure.

Code First Issues
The following tables list the errors that the Sybase Entity Framework data provider returns when running any Code First application that specifies a Sybase database in the connection string.
Error Messages for the Sybase Entity Framework Data Provider
| Problem | Error Message |
| Tried to use Code First | dbo.EdmMetadata not found. Specify owner.objectname or use sp_help to check whether the object exists (sp_help may produce a lot of output). |
| Tried to use Entity Framework 4.0 Canonical Functions | Function 'AddDays' not found. If this is a SQLJ function or SQL function, use sp_help to check whether the object exists (sp_help may produce a lot of output). |
Context.Database.SqlQuery Issue with Oracle Ref Cursors
For your Code First model's mapped stored procedures, trying to call the Insert procedure using Context.Database.SqlQuery will throw the error "Parameters may only be described as RefCursor for stored procedures or anonymous PL/SQL blocks."
To resolve this issue, we recommend that you create a command from context, and call the stored procedure as shown in the example below:
OracleCommand cmd = (OracleCommand)context.Database.Connection.CreateCommand();
cmd.CommandText = "InsertProcedure";
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Parameters.Add(param0);
OracleDataReader myDataReader = cmd.ExecuteReader();
EntityFramework 6.0.0 Issue
If you are building your application with EntityFramework 6.0.0, with both Oracle and DB2 Entity providers, you may face issues in using Set Initialization strategies, in Entity Framework 6.0 Code First Applications.
To resolve this issue, we recommend you build your application with EntityFramework 6.0.2.