我们当前正在使用AutoMapper 5.1.1和Explicit Expansion功能。我有一个类作为Loan,其属性为LoanTypeId-> int,而其他Property类型为Property。在某些情况下,我们希望获取属性中的所有内容,即street&city,在某些情况下,我们仅希望获取street。那有可能吗?因为如果我理解我们必须传递“属性”之类的东西,那么它将从属性中获取所有信息。
_loanRepository.Value.GetById(request.EntityId)
.ProjectTo<DataAttributeResponse>(mapperConfiguration,null,new[] { "LoanTypeId","Property" })
CreateMap<Model.Property,Property>()
.ForMember(d => d.Street,src => src.MapFrom(l => l.Street))
.ForMember(d => d.City,src => src.MapFrom(l => l.City));
CreateMap<Model.Loan,DataAttributeResponse>()
.ForMember(d => d.LoanTypeId,src => src.MapFrom(l => l.LoanTypeID))
.ForMember(d => d.Property,src => src.MapFrom(l => l.Property))
.ForAllMembers(opt => opt.ExplicitExpansion());