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);
        }
コード例 #2
0
        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);
        }