【问题标题】:EFCore- Save Entity with child entity recordsEFCore-保存带有子实体记录的实体
【发布时间】:2018-04-12 11:25:58
【问题描述】:

这是我的模型:

    public partial class UserDTO
    {
     public int UserId { get; set; }
     public ICollection<Userskills> Userskills { get; set; }
    }

 public partial class SkillsmasterDTO
    {
        public sbyte SkillId { get; set; }
        public string Skill { get; set; }
        public ICollection<Userskills> Userskills { get; set; }
   }


  public partial class UserskillsDTO
    {
        public int UserId { get; set; }
        public sbyte SkillId { get; set; }

        public SkillsmasterDTO Skill { get; set; }
        public UsermasterDTO User { get; set; }
    }

 public class UserMaster
    {
     public int UserId { get; set; }
     public List<UserSkills> UserSkills{get;set;}
    //other fields
    }

 public class SkillsMaster
 {
        public sbyte SkillId { get; set; }
        public string Skill { get; set; }
 }

    public class UserSkills
    {
        public int UserId { get; set; }
        public sbyte SkillId { get; set; }
        public string Skill { get; set; }
    }

我想保存 UserMaster,同时我也想保存 UserSkills。 我正在发送以下格式的数据:

{"FirstName": "Priya",
"LastName": "Dave",
"Email":"priya.dave@xyz.com",
"Password":"123456",
"ContactNo":"1234",
"RoleId":1,
"CreatedBy":15,
"UserTypeId":2,
"LocationId":1,
"BandId":1,
"PostId":1,
"IsActive":1,
"UserSkills":[{"SkillId":1}]
}

我为保存而编写的代码是:

 var insertedEmployee= unitOfWork.UserRepository.Add(Mapper.Map<Usermaster>(employee));

_unitOfWork.Save();

它正在保存用户详细信息,但未保存 UserSkills。我怎样才能做到这一点?我浏览了一些博客,但找不到合适的解决方案。

【问题讨论】:

    标签: entity-framework automapper unit-of-work ef-core-2.0


    【解决方案1】:

    由于UserSkillsUserMaster 持久化在不同的表中,因此您需要为一个工作单元执行以下操作。

    1. UserMaster 添加到context.UserMasters 表中
    2. UserSkills 添加到context.UserSkills 表中
    3. UserSkills 添加到context.UserMaster 对象
    4. 然后context.SaveChanges()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多