Це пов’язано з тим, як EF4 працює з першими моделями.
Коли ви вперше створюєте першу модель, вона перебуває в стані, що SSDL не існує. Ви можете перетягувати сутності, асоціювати їх тощо, і все ж, якщо ви подивитесь на SSDL у файлі EDMX, ви побачите, що жоден з об’єктів не має пов’язаної таблиці зберігання в SSDL.
Це змінюється після натискання Generate Database From Model
пункту контекстного меню. Збиває з пантелику те, що ця дія не просто генерує DDL-сценарій. Фактично, він змінює файл EDMX, щоб включати інформацію SSDL. З цього моменту файл EDMX перейде у стан, при якому кожна сутність у конструкторі / CSDL повинна зіставитись із суттю в SSDL. Якщо ніхто не зіставить, це спричинить помилку часу компіляції:
Не вказано відображення для наступних EntitySet / AssociationSet - (EntityName)
Ще одним цікавим фактом є те, що не така помилка перешкоджає компіляції. Це справді генеруватиме вихідну бібліотеку класів. Це не повинно бути попередженням чи чимсь?
Щоб запобігти цій помилці, все, що вам потрібно зробити після вставлення нової сутності, це Generate Database From Model
знову. Це оновить SSDL та виправить відображення.
EDIT
Якщо ви не використовуєте model-first і "оновлюєте з бази даних", ця помилка також з'явиться у випадку, якщо ви видалили таблицю на сервері DB. Це пов’язано з тим, що Entity Framework не буде автоматично видаляти сутність для вас. Видаліть сутність вручну, і помилка зникне.