0
访问目的地元信息从AutoMapper 4移动到6AutoMapper:在6.x版
在ITypeConverter,我们如何访问父范围内,所以我们知道正在填充什么属性,在4版本:
context.PropertyMap.DestinationProperty
所以以下是可能的:
public class UserDetailsConvertor : ITypeConverter<OAuthProfile, UserDetials>
{
public Dto.Accounts.UserDetials Convert(ResolutionContext context)
{
var src = context.SourceValue as OAuthProfile;
if (src == null) return null;
if (!context.PropertyMap.DestinationProperty.Name.Contains("Internal"))
{
return new UserDetials()
{
Id = src.Id
};
}
if (src.InternalAccountId.IsNullOrEmpty())
{
return null;
}
return new UserDetials()
{
Id = src.InternalAccountId
};
}
}
注意,用户细节被映射到2个属性(内部和提供商)这就是上述条件逻辑被整理。
在V6这是不是从我所看到的,有一个项目集合posisble,但这似乎包含整个映射(所有对象)