public static Expression Create( EnumerablePopulationBuilder builder, IObjectMappingData enumerableMappingData) { if (builder.TargetElementsAreSimple) { builder.AssignSourceVariableTo(s => s.SourceItemsProjectedToTargetType().ExcludingTargetItems()); builder.AssignTargetVariable(); builder.AddNewItemsToTargetVariable(enumerableMappingData); return(builder); } if (builder.ElementsAreIdentifiable) { builder.CreateCollectionData(); builder.MapIntersection(enumerableMappingData); builder.AssignSourceVariableTo(s => s.CollectionDataNewSourceItems()); builder.AssignTargetVariable(); builder.AddNewItemsToTargetVariable(enumerableMappingData); return(builder); } builder.AssignSourceVariableToSourceObject(); builder.AssignTargetVariable(); builder.AddNewItemsToTargetVariable(enumerableMappingData); return(builder); }
public static Expression Create(EnumerablePopulationBuilder builder, IObjectMappingData enumerableMappingData) { builder.AssignSourceVariableToSourceObject(); builder.AssignTargetVariable(); builder.AddNewItemsToTargetVariable(enumerableMappingData); return(builder); }