ODAC 12c и Entity Framework 6

Может ли кто-нибудь сказать мне, что Oracle Data Access Components 12c совместим с Entity Framework 6? Веб-сайт Oracle - настоящий кошмар для документации, и он не может найти никаких ссылок на то, как решить эту проблему.

У меня есть существующий проект, который я пытаюсь обновить до ODAC 12c и EF6, но я получаю следующую ошибку, которую пытаюсь решить:

исключение

Я создал новый проект, чтобы исключить любые проблемы с моим существующим проектом, и у меня такая же проблема. Я считаю, что это проблема с файлом app.config, который автоматически редактируется Entity Framework Power Tools Beta 4 (сначала код обратного инженера):

файл конфигурации

Может кто-то указать мне верное направление?


person philreed    schedule 21.10.2013    source источник
comment
После нескольких дней исследований я считаю, что EF6 был выпущен после ODAC 12c, поэтому ODAC 12c и 11.2 работают с EF5, но не с EF6. Итак, теперь мне нужно вернуться к EF5, я думаю :(   -  person philreed    schedule 22.10.2013
comment
ODAC 12c Release 2 теперь доступен, но я не вижу никаких ссылок на то, поддерживает ли он EF6: oracle.com/technetwork/topics/dotnet/utilsoft-086879.html   -  person philreed    schedule 15.01.2014
comment
Я также согласен, что документация Oracle - беспорядок   -  person Learner    schedule 16.01.2014
comment
ODP.net 12 версии 2 не поддерживает EF6. В твиттере мне сообщили, что лето 2014 года.   -  person Jesse    schedule 01.02.2014
comment
@Jesse, спасибо за обновление, можете ли вы дать ссылку на твит?   -  person philreed    schedule 10.02.2014
comment
twitter.com/OracleDOTNET/statuses/421165469681217536   -  person Jesse    schedule 11.02.2014
comment
Еще одна веха пропущена. Вот набор слайдов из презентации ODAC 12c Release 2, в которой говорится, что он будет поддерживать EF 6. php.vncvr.ca/files/netbc/Oracle_NETBC_presentation.pdf   -  person John Tolar    schedule 04.03.2014
comment
Я также наткнулся на то же предположение, что последняя версия ODAC совместима. Я пытался настроить новый EDMX с помощью мастера, и до того, как после настройки соединения он жалуется, что поставщик данных не может работать с EF6 ... ARRRRGGGHHH!   -  person Prethen    schedule 15.03.2014
comment
Анонсирована бета-версия 12c R3 и спортивная EF6. См. Принятый ответ ниже.   -  person philreed    schedule 09.10.2014


Ответы (4)


** Oracle Data Access Components 12c Release 3 Beta 2 ** ODAC 12c R3 - это первый выпуск ODP.NET, сертифицированный для Entity Framework (EF) 6 и EF Code First. http://www.oracle.com/technetwork/topics/dotnet/whatsnew/index.html

person Badreddine Bmg    schedule 09.10.2014
comment
Спасибо, что разместили новости о новом выпуске. - person philreed; 09.10.2014

Недавно Devart анонсировал Поддержка Oracle 12c. Вместо этого вы можете рассмотреть возможность использования их провайдера.

person bricelam    schedule 22.10.2013
comment
Это приемлемый вариант в качестве платного стороннего продукта. Не могу понять, почему Oracle может ускорить итерацию поддержки собственного продукта. - person Jafin; 13.01.2014

В сообщении об ошибке указано, что вы не добавили Oracle.ManagedDataAccess.Client в тег провайдеров.

Добавление этого решит вашу проблему:

<provider invariantName="Oracle.ManagedDataAccessClient"
                type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />

но, к сожалению, в итоге не будет работать из-за отсутствия поддержки EF6 в ODAC 12c R2, как упоминалось в комментариях.

person Paul    schedule 25.08.2014

Дополнительно добавить поставщика Oracle.ManagedDataAccess.Client в тег configuation / entityframework / provsers.

<entityFramework>
<providers>
  <provider invariantName="Oracle.ManagedDataAccess.Client" type="Oracle.ManagedDataAccess.EntityFramework.EFOracleProviderServices,Oracle.ManagedDataAccess.EntityFramework, Version=6.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342" /></providers></entityFramework>

Возможно, вам потребуется добавить следующий тег DbProviderFactories в конфигурацию /, потому что установщик Oracle забывает добавить его в файл machine.config

  <system.data>
<DbProviderFactories>
  <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver"
      type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
</DbProviderFactories>

person kin gold    schedule 14.01.2015