如何在 EF 中对这个关系数据库进行建模,以便我可以为食物类型、维生素和每种食物类型中的维生素含量提供列表集合类?
问问题
122 次
2 回答
2
为了在现实数据库中对您的表进行建模,我认为这一定是个问题,您将拥有 3 个实体。FoodType
,Vitamin
以及FoodTypeVitamin
关系。
FoodType
会有一个名为 的属性Id
,值为 1,2,3,4 等。
Vitamin
会有一个Id
和一个Name
属性,值是
Id Name
1 'A'
2 'B'
3 'C'
4 'D'
FoodTypeVitamin
会有一个外键FoodType
和Vitamin
和一个Mg
属性来保存每个关系的毫克数。所以数据可能是这样开始的
VitmainId FoodTypeId Mg
1 1 200
3 1 100
2 2 50
3 2 11
...
于 2012-05-16T08:13:25.277 回答
0
如果您想使用 EF Code First,您可以执行以下操作:
public class Vitamin
{
[Key]
public String Name {get; set;}
public double Amount {get; set;}
public virtual Food Food {get; set;}
}
public class Food
{
[Key]
public int FoodID {get; set;}
public String FoodName {get; set;}
public virtual List<Vitamin> Vitamins {get; set;}
}
public DataContext: DbContext
{
public DbSet<Vitamin> Vitamin {get; set;}
public DbSet<Food> Foods {get; set;}
}
于 2012-05-16T08:22:59.420 回答