所以我有一个具有数组的对象,我需要将另一个对象的属性映射到该数组。在Automapper 5中,我曾经使用“ ResolveUsing”来执行此操作,但是在更新automapper之后,此操作不起作用。我以前所做的是:
.ForMember(dest => dest.Array, opt => opt.ResolveUsing(o =>
{
return new[] {
new Arra() { Key = "Key", Value = o.Value },
new Arra() { Key = "Key2", Value = o.Value2 }
};
}));
在升级指南中,他们提到不再使用ResolveUsing:http://docs.automapper.org/en/stable/8.0-Upgrade-Guide.html在阅读此内容后,我实际上并不知道如何解决此问题。
所有搜索都将我引向人们尝试映射数组->命名属性的问题,而我的情况则相反。
答案 0 :(得分:0)
您尝试使用MapFrom而不是使用Resolve吗?
.ForMember(dest => dest.Array, opt => opt.MapFrom(o => new[] {
new Arra() { Key = "Key", Value = o.Value },
new Arra() { Key = "Key2", Value = o.Value2 }
}));
答案 1 :(得分:0)
我相信这应该对您有用-
.ForMember(dest => dest.Array, opt => opt.MapFrom(o => new[] {
new Arra() { Key = "Key", Value = o.Value },
new Arra() { Key = "Key2", Value = o.Value2 }
}));