Как решить конфликт ProviderManifestToken = "8.3.7" и Npgsql ProviderManifestToken = "8.1.3"? - PullRequest
2 голосов
/ 18 мая 2010

Я пытаюсь подключиться к своей базе данных PostgreSQL, используя Entity Framework. К сожалению, после генерации модели с использованием EdmGen (или EdmGen2) в моем SSDL-файле ProviderManifestToken имеет значение 8.3.7, а в текущей версии Npgsql (2.0.9) - 8.1.3. Это дает мне следующее исключение при попытке использовать мою модель сущности:

System.Data.MetadataException: схема указанное недействительно. Ошибки: Npgsql.NpgsqlSchema.ssdl (2,52): ошибка 0169: все артефакты SSDL должны быть нацелены тот же провайдер. ProviderManifestToken '8.1.3' является отличается от '8.3.7', который был встречались ранее.

Есть идеи, как это исправить или создать модель с помощью ProviderManifestToken eq 8.1.3?

Пожалуйста, не предлагайте коммерческие соединители баз данных, которые мой бюджет не допустит: P

1 Ответ

1 голос
/ 16 сентября 2011
  • Откройте файл edmx в текстовом редакторе.
  • Найдите атрибут ProviderManifestToken Edmx / Runtime / StorageModels / Schema элемент.
  • Если установлено значение 8.1.3, измените его на 8.3.7, а затем перекомпилируйте все.
...