在图表中更新集合

时间:2016-06-01 15:21:11

标签: .net entity-framework

EF 6.我试图找出更新EF图表最流畅的方法。所以我有一个忍者模型与NinjaEquipments列表。让我们说忍者有三个设备,如下面的

忍者(Id:99)

  • EquipmentID 1,名称:“工具”
  • EquipmentID 2,名称:“Sword”
  • EquipmentID 3,名称:“口袋妖怪”

我将模型发送到要编辑的Web应用程序,并返回以下内容。

忍者(Id:99)

  • EquipmentID 1,名称:“工具”
  • EquipmentID 3,名称:“我最喜欢的口袋妖怪”
  • EquipmentID 0因为它的新名称:“Unicorn”

所以发生的事情是忍者

  1. ID为2“Sword”的丢失物品​​
  2. 将ID为3的项目重命名为“我最喜欢的宠物小精灵”
  3. 获得了一个名为“Unicorn”的新项目
  4. 我将如何以最简单的方式更新数据库上下文中的模型。我能够做到的唯一方法就是寻找新的项目,寻找更改的项目,并将更新的模型与保存的模型进行比较,以查看已删除的项目。这是正确的方法还是有办法给EF新的更新模型并告诉它NinjaEquipments应该反映它?

    课程:

       public class NinjaEquipment
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public EquipmentType Type { get; set; }
    
        [Required]
        public Ninja Ninja { get; set; }
    }
    
     public class Ninja
        {
            public Ninja(Clan clan )
            {
                    Clan = clan;
                EquipmentOwned = new List<NinjaEquipment>();
            }
    
            public Ninja()
            {
                EquipmentOwned = new List<NinjaEquipment>();
            }
            public int Id { get; set; }
    
            public Clan Clan { get; set; }
            public int ClanId { get; set; }
    
            public bool ServedInOnibawan { get; set; }
            public string Name { get; set; }
    
            public List<NinjaEquipment> EquipmentOwned { get; set; }
        }
    

0 个答案:

没有答案