AutoMapper 如何将两个父对象合并为一个对象并反转
AutoMapper How do I Merge two parents into a single object & reverse
我一直在阅读,但这似乎与 OP 没什么不同。三个对象:
parent1 和 Parent2 是 1:1 关系。 EF 中的“拥有”,两者具有相同的 Id 密钥
public class parent1
{
public int Id { get; set; }
public string field1 { get; set; }
public int field2 { get; set; }
}
public class parent2
{
public int Id { get; set; }
public string field3 { get; set; }
public int field4 { get; set; }
}
public class myDTO
{
public int Id { get; set; }
public string field1 { get; set; }
public int field2 { get; set; }
public string field3 { get; set; }
public int field4 { get; set; }
}
是否有一种简短的方法可以将这两个父项合并在一起,并在 DTO 返回使用 AutoMapper 时将它们分开?除了单独指定每个 属性。
CreateMap();
CreateMap();
相当简单,但我想避免像
这样的事情
Mapper.Map(source2, Mapper.Map(source))
避免重复调用 Map 的唯一方法是将两个父 类 封装为一个。这可能是有道理的,因为 parent1 和 parent2 是 1:1,所以实际上它们代表一个对象。
public class mergedParents
{
public int Id { get; set; }
public string field1 { get; set; }
public int field2 { get; set; }
public string field3 { get; set; }
public int field4 { get; set; }
}
我一直在阅读,但这似乎与 OP 没什么不同。三个对象:
parent1 和 Parent2 是 1:1 关系。 EF 中的“拥有”,两者具有相同的 Id 密钥
public class parent1
{
public int Id { get; set; }
public string field1 { get; set; }
public int field2 { get; set; }
}
public class parent2
{
public int Id { get; set; }
public string field3 { get; set; }
public int field4 { get; set; }
}
public class myDTO
{
public int Id { get; set; }
public string field1 { get; set; }
public int field2 { get; set; }
public string field3 { get; set; }
public int field4 { get; set; }
}
是否有一种简短的方法可以将这两个父项合并在一起,并在 DTO 返回使用 AutoMapper 时将它们分开?除了单独指定每个 属性。
CreateMap
相当简单,但我想避免像
这样的事情Mapper.Map
避免重复调用 Map 的唯一方法是将两个父 类 封装为一个。这可能是有道理的,因为 parent1 和 parent2 是 1:1,所以实际上它们代表一个对象。
public class mergedParents
{
public int Id { get; set; }
public string field1 { get; set; }
public int field2 { get; set; }
public string field3 { get; set; }
public int field4 { get; set; }
}