如何使用自动映射器协调列表?
例如给定一个类
public class SomeEntity
{
public Guid Id {get; set;}
public string Name {get; set;}
}
还有一个过分的课程
public class SomeAggregate
{
public IEnumerable<SomeEntity> EntityEnumeration {get;set;}
}
为了这个问题(我的实际要求有点不同)。我需要将SomeAggregate的实例映射到它的另一个实例。我想使用AutoMapper,但我需要自定义EntityEnumeration
的填充方式。
这就是我想要实现的目标:
Mapper.CreateMap<SomeAggregate,SomeAggregate>()
.ForMember(d => d.SomeAggregate, *** MISSING LOGIC ***);
Mapper.Map(newInstance, existing);
需要使用检查以下内容的代码替换* MISSING LOGIC * :
Id
的成员,如果不是从RHS添加成员。Id
,只需更新匹配实体的Name
属性。Id
,请从LHS中删除Id
。我甚至不知道从哪里开始,因为我无法在同一个lambda委托中获得LHS和RHS的实例来进行这种比较。至少没有任何内置选项似乎让我做这种映射。我认为这应该是一个相当常见的用例。
请帮忙。