Как указать поставщика SQLite в EDMX? - PullRequest
0 голосов
/ 23 января 2020

Мой вопрос основан на ряде моих предположений. Реальная проблема, с которой я сталкиваюсь, заключается в том, что при первой попытке использовать модель EF6 для вставки строк в базу данных SQLite появляется ошибка «Указанная схема недопустима. Ошибки: Database.msl (5,4): ошибка 2062: сопоставление не указано для экземпляры EntitySet и AssociationSet в EntityContainer DatabaseContext. " Это происходит в ((DbContext) _ToContext) .SaveChanges (); после того, как я сделал objDbSet.AddRange (objSourceList.Select (fnTranslate));.

Я не понимаю несколько вещей, и проблема может быть где угодно. Сначала я создал пустую модель EDMX, а затем добавил две таблицы для подтверждения концепции. Когда я это сделал, он не запрашивал у меня строку подключения или поставщика, но, по-видимому, по умолчанию он устанавливает для провайдера значение System.Data.SqlClient: .

Затем я добавил несколько строк в свой App.config. Я боролся с этим некоторое время, пока не сделал это правильно, и по праву я имею в виду, пока простой код не сработал до вызова SaveChanges. Теперь я предполагаю, что, поскольку в EDMX указан поставщик System.Data.SqlClient. Система EDMX сгенерировала неправильный MSL-файл в ресурсах, поэтому я ищу способ указать поставщика SQLite в надежде, что это решит проблему. Кто-нибудь знает, как это сделать? Кто-нибудь может опубликовать файл EDMX, используемый с SQLite из рабочего проекта?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...