2015-01-02 5 views
0

Я использую Devforce 7.2.4, Devart - dotConnect для Oracle 8.4.313, Entity Framework 6.1.2.Нет провайдера Entity Framework для поставщика ADO.NET с инвариантным именем «Devart.Data.Oracle»

Я получил эту ошибку, когда я установить DevForceEnabled свойство верно в моем model.edmx

Однако я нашел ссылку = http://blog.devart.com/entity-framework-6-support-for-oracle-mysql-postgresql-sqlite-and-salesforce.html

web.config код

<configSections> 
    <section name="ideablade.configuration" type="IdeaBlade.Core.Configuration.IdeaBladeSection, IdeaBlade.Core" /> 
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
</configSections> 

<entityFramework> 
    <providers 
    <provider invariantName="Devart.Data.Oracle" type="Devart.Data.Oracle.Entity.OracleEntityProviderServices, Devart.Data.Oracle.Entity, Version=8.4.313.6, Culture=neutral, PublicKeyToken=09af7300eec23701" /> 
    </providers> 
</entityFramework> 

<system.data> 
    <DbProviderFactories> 
    <remove invariant="Devart.Data.Oracle" /> 
    <add name="dotConnect for Oracle" invariant="Devart.Data.Oracle" description="Devart dotConnect for Oracle" type="Devart.Data.Oracle.OracleProviderFactory, Devart.Data.Oracle, Version=8.4.313.0, Culture=neutral, PublicKeyToken=09af7300eec23701" /> 
    </DbProviderFactories> 
</system.data> 

Любая идея, если DevForce и Деварт все еще работает вместе, или я чего-то не хватает?

ответ

0

Я использовал Devart в одном из своих проектов, и я помню эту ошибку, когда версия в типе раздела поставщика в файле web.config не соответствовала какой-либо из сборок в GAC. Не могли бы вы проверить, действительно ли версия Devart.Data.Oracle.dll в GAC 8.4.313.0? Если вы установили обновление, оно может быть обновлена ​​версия сборки не обновляя версии в web.config

+0

Спасибо за ваше время. Я уже сделал это. – Molinari

+0

Но проблема возникла, когда я установил DevForceEnabled = true – Molinari

+0

DevForce является агностиком провайдера, поэтому он должен работать с любым EF. Если вы получаете эту ошибку во время сборки, добавьте информацию о провайдере из вашего web.config в app.config в проект модели. –

0

несколько вещей, чтобы смотреть на -

  • Убедитесь, что правильный номер версии (s) для сборок Devart . Ваш web.config использует два разных номера версии.
  • Коллекции Devart должны быть доступны в папке bin или GAC. Если GAC, они также должны быть указаны в элементе компиляции/сборки в файле web.config.
  • Убедитесь, что ваша строка подключения использует правильное имя поставщика.
  • Удалите * .edmx.tt и любые другие .tt, которые могли быть сгенерированы EF. При повторной сохранении модели DevForce создаст новый * .edmx.tt.
  • Проверьте окно «DevForce» в окне вывода для любых дополнительных сообщений.
+0

- версия Devart в папке web.config, GAC и bin OK - имя провайдера OK - Следуйте инструкциям по файлу edmx.tt. Но ошибка все еще жива. - Сообщение выходного окна «DevForce»: попытка найти и обработать любые несоответствия CSDL/SSDL в: MyModel.edmx – Molinari

+0

Боюсь, что у меня нет идей. Если вы заплатили за поддержку, отправьте решение для воспроизведения в ideabladesupport, и мы увидим, можем ли мы диагностировать проблему. –

0

Это оказалось ошибкой при использовании Oracle с EF 6.1 и было исправлено в DevForce 7.2.6, доступном на NuGet.

+0

Спасибо за исправление Ким – Molinari