2012-05-18 3 views
0

У меня есть консольное приложение, которое использует код First Entity Framework 4.3.1. Я создал класс, DbContext, DbSet, и у меня есть соединение с базой данных.EF Code - первое имя кэшированного плохого стола?

Проблема в том, что я неправильно сформулировал имя таблицы, и программа выбросила ошибку. Я изменил имя в DbSet, и система продолжает бросать ту же ошибку, у которой есть старое имя.

Пример:

public DbSet<SHIPPER> SHIPPERs { get; set; } 

Это не может найти таблицу грузоотправителей в сервере SQL. Нет проблем. Я изменил его

public DbSet<SHIPPER> SHIPPER { get; set; } 

и я получаю недопустимое имя объекта «dbo.SHIPPERs».»

Я сделал поиск в Visual Studio для грузоотправителей и ничего не вернули. Что мне не хватает?

Примечание: Я создал еще один DbSet за другой стол и работает

+1

Я думаю, что проблема связана с PluralizingTableNameConvention. Я набрал это имя как множественное число, а затем, когда я удалил 's', плюрализуя ногами. Мое решение состояло в том, чтобы добавить DataAnnotation над классом. – Pete

ответ

0

проблема была с плюрализацией Добавьте следующий код внутри вашего класса DbContext, чтобы устранить проблему:..

protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
     modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); 
    } 
Смежные вопросы