このリレーショナル データベースを EF でモデル化して、食品の種類、ビタミン、および各食品の種類のビタミンの量のリスト コレクション クラスを作成するにはどうすればよいでしょうか?
2 に答える
2
現実的なデータベースでテーブルをモデル化するには、これが問題になると思いますが、3 つのエンティティが必要です。FoodType
、Vitamin
およびFoodTypeVitamin
関係。
FoodType
という 1 つの属性があり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 に答える