I'm trying to connect my sample database using dotConnect for PostgreSQL + Entity Framework 6 + .Net 4.5 + VS2012.
Database First option + Self-Tracking Entities are used.
The following MetadataException is thrown (container was created without any error; exception occurs while trying to get the data):
App settings were taken from this link: EF6 support for Oracle, MySQL and other.Schema specified is not valid. Errors:
DataModel.ssdl(2,2) : error 0152: The 'Instance' member of the Entity Framework provider type 'Devart.Data.PostgreSql.Entity.PgSqlEntityProviderServices, Devart.Data.PostgreSql.Entity, Version=6.4.164.0, Culture=neutral, PublicKeyToken=09af7300eec23701' did not return an object that inherits from 'System.Data.Entity.Core.Common.DbProviderServices'. Entity Framework providers must extend from this class and the 'Instance' member must return the Singleton instance of the provider.
Here is my configuration file:
Code: Select all
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
</configSections>
<connectionStrings>
<add name="MigrationEntitiesConnectionString" connectionString="metadata=res://*/DataModel.csdl|res://*/DataModel.ssdl|res://*/DataModel.msl;provider=Devart.Data.PostgreSql;provider connection string="user id=postgres;password=123456;host=localhost;database=migration;schema=public;"" providerName="System.Data.EntityClient"/>
</connectionStrings>
<system.data>
<DbProviderFactories>
<remove invariant="Devart.Data.PostgreSql"/>
<add name="dotConnect for PostgreSQL" invariant="Devart.Data.PostgreSql" description="Devart dotConnect for PostgreSQL" type="Devart.Data.PostgreSql.PgSqlProviderFactory, Devart.Data.PostgreSql, Version=6.4.164.0, Culture=neutral, PublicKeyToken=09af7300eec23701"/>
</DbProviderFactories>
</system.data>
<entityFramework>
<providers>
<provider invariantName="Devart.Data.PostgreSql" type="Devart.Data.PostgreSql.Entity.PgSqlEntityProviderServices, Devart.Data.PostgreSql.Entity, Version=6.4.164.0, Culture=neutral, PublicKeyToken=09af7300eec23701">
<migrationSqlGenerator type="Devart.Data.PostgreSql.Entity.Migrations.PgSqlEntityMigrationSqlGenerator, Devart.Data.PostgreSql.Entity, Version=6.4.164.0, Culture=neutral, PublicKeyToken=09af7300eec23701"/>
</provider>
</providers>
</entityFramework>
</configuration>
Thanks,
M. Ershov