映射多个子属性

时间:2018-11-19 16:28:38

标签: entity-framework-core automapper

有些Automapper头痛。任何帮助表示赞赏!

public class ObjectA {
  public int Id { get; set; }
  public string Name { get; set; }
  public List<ObjectB> ObjectBList {get; set;}
}

public class ObjectB {
  public int Id { get; set; }
  public int ObjectAId { get; set; }
  public ObjectA Parent;

  public int ObjectCId { get; set; }
  public ObjectC SecondaryNavProperty {get; set;}
}

public ObjectADto {
  public string Name { get; set; }
  public int[] Children { get; set; }
}

如何将DTO转换为有效的ObjectA,其中ObjectBList是ObjectB的数组,其中每个条目的ID都设置为ObjectDto.Children属性之一。

我目前正在这样做:

configuration.CreateMap<ObjectADto , ObjectA >()
                .ForMember(destination => ObjectA.ObjectBList , options => options.MapFrom(source => source.Children.Select(detail => detail)))

但这是不对的,因为我没有在ObjectB.Id数组中将Children赋值给项目。 ObjectB作为.net核心多对多表存在。

谢谢!

0 个答案:

没有答案