Почему я получаю эту ошибку: не указано сопоставление для следующего EntitySet / AssociationSet - Entity1? - PullRequest
90 голосов
/ 14 апреля 2011

Я использую Entity Framework 4 с подходом Model First.

Я запустил проект, спроектировал сущности и создал базу данных.Все работало нормально.

Затем мне нужно было вернуться и добавить еще одну сущность в мою модель.Однако, когда я перетаскиваю объект в EDMX, я получаю эту ошибку:

enter image description here

Хорошо!Мне просто нужно сопоставить Entity1 с таблицей .. Но эй!Я использую подход Model First, я ожидаю, что он создаст таблицу для меня при генерации DDL.

Как мне обойти эту ошибку?

Ответы [ 14 ]

0 голосов
/ 06 сентября 2016

Я все правильно настроил (мощности и зависимые свойства), но не мог понять, почему я продолжаю получать ошибку.Наконец, выяснилось, что EF сгенерировал столбец в зависимой таблице самостоятельно (table_tablecolumn), и он не имеет никакого отношения к таблице, поэтому сопоставление не было указано.Мне пришлось удалить столбец в файле EDMX и перестроить решение, которое решило проблему.Я использую подход БД.

0 голосов
/ 26 июля 2016

У меня была ошибка, когда я пытался создать пользовательский результат для хранимой процедуры, и предположил, что это должен быть объект.

Решение состояло в том, что я просто создал сложный тип в браузере модели иназначил это в результате «Редактировать функцию импорта».

Я добавлю это здесь, так как похоже, что этот вопрос - то, куда Google ведет вас, когда вы получаете эту ошибку.

0 голосов
/ 08 февраля 2016

Была эта ошибка, когда я удалил таблицу из базы данных.Решил его, щелкнув правой кнопкой мыши на диаграмме EDMX, перейдя в Свойства, выбрав таблицу из списка в окне Свойства и удалив ее (используя клавишу удаления) из диаграммы.

0 голосов
/ 12 декабря 2015
  1. Перейдите в Solution Explorer, нажмите кнопку поиска
  2. Оставьте отмеченными оба Search within file content и Search External Files
  3. Введите имя сущности, которое ваше отображение не распознает.
  4. Удалить все файлы, связанные с проблемой. Те, вероятно, будут названы в честь того же пропавшего лица. НЕ удаляйте файл с именем вашего Context Class в файле, особенно если их расширения .cs или .tt. В файле Context .cs .
  5. удалить все строки кодов, ссылающихся на отсутствующий объект. Они будут выглядеть так:

    public virtual DbSet< Entity1> Entity1 { get; set; }
    

Эта ошибка характерна для таблиц, удаленных из базы данных.

Когда кто-то удаляет таблицу в базе данных или просто меняет web.config.connectionStrings для базы данных EF Mapped, чтобы указать на новую, а не на ту, которая использовалась для генерации исходных отображений, это проблема.

Именно этот новый дБ этих сущностей с ошибкой 3027 отсутствует.

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