2011-03-26 51 views
2

我有一些类称为MYDB是继承的DbContext 类包含以下成员:实体框架代码优先:为什么我的集合没有创建?

public DbSet<Zoo> mAllZoos { get; set; } 

动物园类看起来是这样的:

public class Zoo 
{ 
    public string Name { get; set; } 
    public IEnumerable<Animal> Animals { get; set; } 
    public int ZooSize { get; set; } 
    public int ID { get; set; } 
} 

有一种“动物”类,这是根本不相关,但它确实包含“ID”。

当我问他创造了从我的课,他创建了一个名为动物为我的动物表的数据库,并为我的动物园表动物园..

在动物园表中,只有“大小”和“名称”字段 动物表中有ID和其他属性,但没有对动物园的引用。

底线是,有来自动物的动物园没有提及,所以我不能救哪一种动物是在动物园..

我做了什么错?我该如何解决它。

在此先感谢

回答

4

我相信你需要在你的情况下申报的动物DbSet以及

public DbSet<Animal> Animals { get; set; } 

请问动物类有一个ID属性,或者至少一个属性标有KeyAttribute?实体框架将使用该ID(或键)在表格之间创建Foreign Key关系。

顺便问一下,你就必须标志着Zoo类作为virtualAnimals财产,如果你想延迟加载工作:

public virtual IEnumerable<Animal> Animals { get; set; } 
相关问题