поставщик с инвариантным именем Devart.Data.PostgreSql либо не зарегистрирован в файле конфигурации компьютера или приложения, либо не может быть загружен - PullRequest
0 голосов
/ 19 февраля 2019

Я получаю это сообщение об ошибке при использовании моего API с базой данных PostGres.

"Поставщик ADO.NET с инвариантным именем Devart.Data.PostgreSql не зарегистрирован ни в компьютере, ни в файле конфигурации приложения,или не удалось загрузить. Подробности см. во внутреннем исключении. "

У меня такое чувство, что мне нужно установить продукт Devart на свой промежуточный и рабочий сервер, чтобы исправить ошибку.Это правильно?В случае, если это правильно, я хотел бы понять, почему простого копирования или публикации Devart dll недостаточно?Обычно этого должно быть достаточно.

В сообщении об ошибке я могу прочитать "либо не зарегистрирован".Что значит быть зарегистрированным?Это повторно зарегистрировано в файле конфигурации, или мне нужно сделать определенную операцию на моем оборудовании для постановки и производства?

enter image description here

1 Ответ

0 голосов
/ 19 февраля 2019

Вы должны зарегистрировать информацию о конфигурации в разделе DbProviderFactories файла * .config:

<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=7.12.1328.0, Culture=neutral, PublicKeyToken=09af7300eec23701" />
  </DbProviderFactories>
</system.data>

Замените здесь 7.12.1328.0 вашей фактической версией.

См. https://www.devart.com/dotconnect/postgresql/docs/?deployment.html.

...