Кажется, что EF Code First работает по-разному, в зависимости от типа базы данных, к которой вы подключаетесь.Если вы работаете с SQLCE, который ScottGu использует для демонстрации кода EF First, тогда все таблицы будут созданы с именами, которые не являются множественными.Однако если вы используете SQL Server 2008 (это то, что я тестировал), он ожидал, что имена таблиц будут множественными.Есть несколько способов обойти это, вы можете добавить атрибут имени таблицы, как показывает Омар, или вы можете переопределить событие OnModelCreating для контекста.
protected override void OnModelCreating(DbModelBuilder modelBuilder) {
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
base.OnModelCreating(modelBuilder);
}