代码之家  ›  专栏  ›  技术社区  ›  Antti Isomursu

使用代码优先方法关联表数据

  •  0
  • Antti Isomursu  · 技术社区  · 8 年前

    如何在以下场景中关联数据: 那么NinjaItem表将包含属于忍者的物品的数据?ItemList表应仅包含项名称和id。

    我有以下关于忍者和忍者的信息,但我不知道如何将忍者和项目列表联系起来。

    public class Ninja
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public virtual List<NinjaItem> NinjaItem { get; set; }
    }
    public class NinjaItem
    {
        public int ID { get; set; }
        public int NinjaID { get; set; }
        public int ItemListID { get; set; }
        public virtual List<ItemList> ItemList{ get; set; }
    }
    public class ItemList
    {
        public int Id { get; set; }
        public string Name { get; set; }      
    }
    
    1 回复  |  直到 8 年前
        1
  •  0
  •   Bugs    8 年前

    将解决方案从问题转移到答案:

    解决方案:

    public class Ninja
    {
        public Ninja ()
        {
            this.ItemLists = new HashSet<ItemList>();
        }
        public int NinjaId { get; set; }
        public string Name { get; set; }
        public virtual ICollection<ItemList> ItemLists { get; set; }
    }
    
    public class ItemList
    {
        public ItemList ()
        {
            this.Ninjas = new HashSet<Ninja>();
        }
        public int ItemListId { get; set; }
        public string ItemName { get; set; }
        public virtual ICollection<Ninja> Ninjas { get; set; }
    
    }