Я пытаюсь создать небольшую POC для моего босса о гибриде npgsql 12 и EF6, создал новый проект по визуальной студии создал базу данных созданы соответствующие классы и DbContext еще, когда я пытаюсь и использовать эф для доступа к базе данных я получаю ошибку folowing:Использование npgsql 12 и ef 6 вместе - с кем-нибудь удалось?
The 'Instance' member of the Entity Framework provider type 'Npgsql.NpgsqlFactory, Npgsql, Version=2.0.12.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7' did not return an object that inherits from 'System.Data.Entity.Core.Common.DbProviderServices'. Entity Framework providers must inherit from this class and the 'Instance' member must return the singleton instance of the provider. This may be because the provider does not support Entity Framework 6 or later; see http://go.microsoft.com/fwlink/?LinkId=260882 for more information.
Я знаю, что она должна быть поддержана в течение достаточно долгого времени теперь http://fxjr.blogspot.co.il/2013/06/initial-ef-6-support-added-to-npgsql.html
однако я не могу заставить его работать, мой App.C Файл onfig выглядит так:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http:// go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<!--<section name="entityFramework" type="Npgsql.NpgsqlFactory, Npgsql, Version=2.0.12.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" />-->
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<entityFramework>
<defaultConnectionFactory type="Npgsql.NpgsqlFactory, Npgsql">
<parameters>
<parameter value="v11.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="Npgsql" type="Npgsql.NpgsqlFactory, Npgsql" />
</providers>
</entityFramework>
<system.data>
<DbProviderFactories>
<add name="Npgsql Data Provider"
invariant="Npgsql"
description="Data Provider for PostgreSQL"
type="Npgsql.NpgsqlFactory, Npgsql" />
</DbProviderFactories>
</system.data>
<connectionStrings>
<add name="CoolestPGSoft"
connectionString="Server=127.0.0.1;Port=5432;Database=CoolestPGSoft;User Id=postgres;Password=********;"
providerName="Npgsql" />
</connectionStrings>
</configuration>
любая помощь будет оценена!
Принял некоторое время, чтобы выяснить это сам - пришлось пойти в консоль менеджера пакетов и использовать «Install-Package npgsql -Pre», также di d что в сущности-рамках, спасибо за подтверждение, я должен был сделать это только для npgsql. –
Использование этого NpgSql из Zip-файла здесь (2.0.13.91) Действительно не бросает исключение DbProvider, но оно выдает несколько других странных исключений в запросах. EF6 и NpgSql 2.0.14.3 Теперь доступны для nuget без использования -pre. Но я все еще вернусь к тому же исключению, о котором говорилось выше. Выпущены как стабильные версии EF, так и NpgSql, должно быть решение! –