EF4 выдает ошибку «Указанная схема недопустима» - PullRequest
12 голосов
/ 15 июня 2010

Я получаю странную ошибку EF4 «Entity Framework v4», когда я делаю выборку в контексте.

Там я получаю:

Указанная схема недействительна. Ошибки: Отношение 'AnalyzerConfigurationModel.FK_AnalyzerMetadataParameters_AnalyzerMetadata' не загружено, поскольку тип 'AnalyzerConfigurationModel.AnalyzerMetadataParameter' недоступен.

Запрос для генерации ошибки:

Using context As New AnalyzerConfigurationEntities
      Dim EFAnalyzerConfiguration = (From P In context.AnalyzerConfigurations
                                     Where P.Name = analyzerConfigurationName).FirstOrDefault
End Using

Схема показана ниже. альтернативный текст http://i49.tinypic.com/2eujwd0.jpg

Я проверял строки подключения несколько раз, это не так. Все выглядит хорошо. Я не уверен, выключен ли XML, который генерируется из этой схемы, или нет. Но посмотрел и там и не вижу ничего отличного от других. Кто-нибудь сталкивался с этим раньше?

Ответы [ 4 ]

12 голосов
/ 12 февраля 2013

Я обнаружил, что если я развернул файл EDMX в обозревателе решений (VS 2012) и щелкнул правой кнопкой мыши по каждому .tt файлу и выбрал Запустить пользовательский инструмент , то также исправил проблему.Это может быть проще, чем де

2 голосов
/ 22 июня 2016

Также убедитесь, что на ваш проект ссылается установленный EntityFramework, иначе зависимый код получит эту ошибку.

https://www.nuget.org/packages/EntityFramework

1 голос
/ 14 августа 2013

Позвольте мне объяснить это:

Проблема заключается в том, что система не нашла согласованность столбцов в базе данных, сущностей в файле .edmx и класса модели, а также их использование вкласс контроллера.

Поэтому выполните следующие действия, чтобы исправить это:

  1. Перейдите в базу данных, проверьте все имена и свойства столбцов.
  2. Подтвердите их с помощьюдиаграмма классов в файле .edmx.Щелкните правой кнопкой мыши класс, в котором вы получаете ошибку, и выберите опцию обновления для класса.В диалоговом окне выберите вкладку «Обновить» (если новый столбец не добавлен. Если добавлен новый столбец, вы можете выбрать вкладку «Добавить») и выбрать соответствующие объекты.Обычно они являются таблицами.Поэтому выберите их и завершите.
  3. Затем проверьте имена в классе модели и классе контроллера.

Это должно быть решением.Если нет, дайте мне знать.

0 голосов
/ 31 июля 2010

Используете ли вы шаблон SelfTracking Entity T4? У меня была эта проблема, и я обнаружил, что шаблон T4 не генерирует мои сущности после того, как я изменил модель сущностей в Entity Designer. Попробуйте щелкнуть правой кнопкой мыши по шаблону T4 и нажать «Запустить пользовательский инструмент», и посмотрите, поможет ли это.

...