0

したがって、次のEFモデルがあります。

[Table("Site")]
public class Store{
    [Key]
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
    public int ID { get; set; }
    [ForeignKey("ID")]
    public virtual ICollection<Item> Items { get; set; }
}
[Table("Item")]
public class Item {
    [Key]
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
    public int ID { get; set; }
    [Column("SiteID")]
    public int storeID { get; set; }
    [ForeignKey("storeID")]
    public Store store { get; set; }
}

したがって、Item->Store からの移動は問題ないようで、データが入力されます。しかし、Store->Items は入力されません。私は何を間違っていますか?

4

1 に答える 1

0

1 対多の関係を構築するには、InverseProperty を使用する必要があります。このような!

[Table("Site")]
public class Store {
    [Key]
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
    public int ID { get; set; }
    [InverseProperty("store")]
    public virtual ICollection<Item> Items { get; set; }
}

[Table("Item")]
public class Item {
    [Key]
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
    public int ID { get; set; }
    [Column("SiteID")]
    public int storeID { get; set; }
    [ForeignKey("storeID")]
    public Store store { get; set; }
}

すべてが読み込まれ、Items コレクションがイベントされます。

于 2013-05-10T19:16:04.627 に答える