ASP.NET + ENTITY FRAMEWORK (NOME DA TABELA ERRADO)

PERCIFILHO 11/10/2016 10:15:20
#467995
Bom dia pessoal.
Estou usando o Asp.,Net com Entity Framework, usando alguns exemplos encontrados na internet e está ocorrendo o seguinte problema:
Eu criei a classe para o meu objeto (Animal) e criei uma classe de dados derivando de DbContext (Dados).
Aí eu vou adicionar um controller usando a opção do Visual Studio: MVC 5 Controller with views, using Entity Framework, e dou o nome do controller de AnimaisController.
Acontece que o Visual Studio cria para mim o controller e as views tudo certinho.
Só que eu estou usando um banco de dados já existente (Animais) e quando vou rodar o projeto, o Visual Studio me informa que a tabela não foi encontrad:
The specified table does not exist. [ Animals ].
Reparem que o Visual Studio entende que eu estou utilizando uma tabela Animals ao invés de Animais, ou seja, na hora de criar o controller e as views, ele dá um jeito de pluralizar o nome da tabela, só que para o inglês. Existe alguma forma de eu alterar isso, alguma configuração? Já procurei em todos os arquivos do projeto e ainda não encontrei onde fica armazenado esse parâmetro. Como faço para contornar essa situação? Sempre vai ser assim?
LAMPIAO 11/10/2016 12:02:03
#467998
Resposta escolhida
Olá PERCIFILHO, faça um override no OnModelCreating na sua classe que herda de DbContext e escreva o seguinte:

modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();

Isso vai remover a pluralização das suas entidades.

Para facilitar segue abaixo o método, você pode remover outras convenções também.

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}

Espero que resolva o seu problema,

Abraços
PERCIFILHO 11/10/2016 16:37:36
#468006
Beleza, Lampião, muito obrigado
Tópico encerrado , respostas não são mais permitidas