private Expression GetDictionaryToElementMapping(IObjectMappingData enumerableMappingData) { var elementMappingData = ObjectMappingDataFactory.ForElement( MapperData.SourceType, _builder.Context.TargetElementType, enumerableMappingData); var dictionaryToElementMapping = MappingFactory.GetElementMapping( MapperData.SourceObject, _builder.Context.TargetElementType.ToDefaultExpression(), elementMappingData); return(dictionaryToElementMapping); }
protected override IEnumerable <Expression> GetObjectPopulation(MappingCreationContext context) { var mapperData = context.MapperData; var queryProjection = mapperData .EnumerablePopulationBuilder .GetSourceItemsProjection( mapperData.SourceObject, sourceParameter => MappingFactory.GetElementMapping( sourceParameter, mapperData.TargetMember.ElementType.ToDefaultExpression(), context.MappingData)); queryProjection = QueryProjectionModifier.Modify(queryProjection, context.MappingData); yield return(queryProjection); }