我在 Visual Studio 中使用 mapster 和 C#,并且需要将三个对象映射到一个对象。有人做过吗,有例子吗?Mapster 说它有这种能力,但我无法让它工作。谢谢。
1 回答
2
您可以使用所有对象的元组作为 Source 创建一个新的 TypeAdapterConfig。这是一个例子
public class DTO1
{
public int Age { get; set; }
}
public class DTO2
{
public int ID { get; set; }
}
public class DTO3
{
public string Name { get; set; }
}
public class POCO
{
public int ID { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
var config = TypeAdapterConfig<(DTO1, DTO2, DTO3), POCO>.NewConfig()
.Map(dest => dest.Age, src => src.Item1.Age)
.Map(dest => dest.ID, src => src.Item2.ID)
.Map(dest => dest.Name, src => src.Item3.Name);
将DTO1 、DTO2、DTO3视为要映射到POCO实体的源实体。
定义此配置后,您可以将其作为参数 (config.Config) 传递给 Adapt 方法。
于 2021-08-20T17:01:51.963 回答