Entity Framework (4.3) procurando por nome singular em vez de plural (quando o nome da entidade termina com "s")
Aqui está a minha situação: estou trabalhando em um aplicativo ASP.NET MVC 3 há algum tempo. Ele tem um banco de dados (construído a partir de um projeto de banco de dados; eu vou usar o banco de dados primeiro) para o qual tenho um modelo edmx e, em seguida, um conjunto de POCOs. Minhas entidades têm nomes plurais no banco de dados e POCOs têm nomes singulares. Tudo mapeia bem sem problemas.
Or costumava até eu adicionar uma nova tabela (chamada TransactionStatuses). Agora todas as entidades antigas ainda funcionam, mas a nova não. Quando tento carregá-lo avidamente com uma entidade relacionada:
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();
Eu receb
Nome do objeto inválido 'dbo.TransactionStatus'.
té fiz um teste mais simples:
List<TransactionStatus> statuses = db.TransactionStatuses.ToList();
= mesmo resultado.
Atualizei (e até recriei) o edmx a partir do banco de dados e o reparei tentando descobrir o que há de diferente no mapeamento para o dbo.TransactionStatus * es * que tropeça na coisa toda.
Se alguém puder me apontar na direção de uma correção, seria maravilhos
P.S. Desativar a pluralização não é uma opção, obrigado.
Atualiza: Eu descobri - minha resposta abaix