У меня есть сторонний проект (например, DataProject) с определенным контекстом данных EF, а также файлы EDMX.
У меня также есть свой собственный проект (например, MyProject), который ссылается на DataProject, поэтому я могу использовать его контекст данных.
Когда я ссылаюсь на MyProject непосредственно на DataProject внутри решения, все работает хорошо. Файлы EDMX в MyProject / bin / Debug / EDMX точно такие же, как в DataProject / EDMX /.
Но мне нужно, чтобы MyProject использовал DataProject в качестве пакета NuGet. Поэтому я добавляю его как ссылку на NuGet, и пока он добавляется, я замечаю, что папка EDMX появляется в основной папке MyProject. Файлы EDMX в этой папке такие же, как в DataProject / EDMX. Все идет нормально.
Но когда я строю и запускаю MyProject, он создает MyProject / bin / Debug / EDMX с файлами другой версии, чем в любой из вышеперечисленных, и я не могу запустить datacontext из-за ошибки «Текущая модель больше не соответствует модели, использованной для предварительной генерации видов отображения ...». Я не уверен, почему это происходит - это несовпадение контекста и файлов EDMX или что-то еще. Я просто знаю, что если я ссылаюсь на MyProject непосредственно на DataProject в решении, то все работает хорошо.
- Почему MyProject создает разные файлы EDMX, когда я ссылаюсь на DataProject как пакет NuGet? Почему он создает те же файлы при обращении непосредственно к DataProject?
- Есть ли способ игнорировать вышеуказанную ошибку?
- Есть ли способ принудительно указать контекст EF, используя файл c EDMX?
- Есть ли файл / config где я должен проверить какие-либо настройки?
- Любые другие варианты?
Я знаю, что проблема в общих чертах, но я был бы признателен за любую помощь в направлении движения.