EF不会创建我的表

时间:2014-03-30 21:09:06

标签: c# entity-framework ef-code-first ef-migrations

我有三个班级,使用TPH(每个高度表):

abstract class Cat { int Id;    string Name; }
class ItemCat: Cat { }
class PhotoCat: Cat{ }

class Db:DbContext
    {
    Db()
      {
        Database.SetInitializer(new MigrateDatabaseToLatestVersion<Db,Migrations.Configuration>());
      }
      DbSet<ItemCat> ItemCats;
      DbSet<PhotoCat> PhotoCats;
    }

并且还有Seed()方法来种子ItemCats

update-database运行良好,种子表。

但EF不会创建我的ItemCat!并保证它创造了猫! &安培;播种它。我在DbContext中没有猫。

我还将[Table(“ItemCats”)]添加到ItemCat类中,ItemCats表出现但只有id列!!

我认为这是因为ItemCat&amp; PhotoCat课程是空的&amp;只是继承自Cat类。 这对我来说很奇怪。

1 个答案:

答案 0 :(得分:0)

将配置更改为每种类型的表应该提供您期望的表。有关每种类型的表如何生成表的详细信息位于here