Вот моя ситуация: Я некоторое время работаю над приложением ASP.NET MVC 3. У этого есть база данных (построенная из проекта db, я иду db-first), для которого у меня есть модель edmx, а затем набор POCOs. Мои объекты имеют множественные имена в базе данных, а POCOs имеют уникальные имена. Все прекрасно выглядит без проблем.
Или используется до тех пор, пока я не добавлю новую таблицу (называемую TransactionStatuses). Теперь все старые сущности все еще работают, но новый не работает. Когда я пытаюсь загрузить его вместе с связанной сущностью:
var transactions = (from t in db.Transactions.Include(s => s.TransactionStatus) //TransactionStatus - navigation property in Transactions to TransactionStatuses
where t.CustomerID == CustomerID
select t).ToList();
Я получаю
Недопустимое имя объекта 'dbo.TransactionStatus'.
Я даже сделал более простой тест:
List<TransactionStatus> statuses = db.TransactionStatuses.ToList();
= тот же результат.
Я обновил (и даже воссоздал) edmx из db и прошел через него взад и вперед, пытаясь выяснить, что отличается от сопоставления для dbo.TransactionStatus * es *, который совершает все это.
Если кто-то может указать мне в сторону исправления, было бы замечательно.
P.S. Отклонение плюрализации не является вариантом, спасибо.
Обновление: я понял это - мой ответ ниже.