public FieldMerger(IEnumerable <Relation> relations, IMassMerge customMerger = null) { var availableMergers = new IRelationManager[] { new OneToManyManager(), new OneToOneManager() }; foreach (Relation relation in relations) { bool customMergerFound = false; if (customMerger != null) { foreach (IRelationManager merger in customMerger.CustomRelationManagers.Where(m => m.CanProcess(relation))) { AddRelationManager(relation, merger); customMergerFound = true; } } if (!customMergerFound) { foreach (IRelationManager merger in availableMergers.Where(m => m.CanProcess(relation))) { AddRelationManager(relation, merger); } } } }
public FieldMerger(IEnumerable<Relation> relations,IMassMerge customMerger = null) { var availableMergers = new IRelationManager[] { new OneToManyManager(), new OneToOneManager() }; foreach (Relation relation in relations) { bool customMergerFound = false; if (customMerger != null) foreach (IRelationManager merger in customMerger.CustomRelationManagers.Where(m => m.CanProcess(relation))) { AddRelationManager(relation, merger); customMergerFound = true; } if(!customMergerFound) foreach (IRelationManager merger in availableMergers.Where(m => m.CanProcess(relation))) AddRelationManager(relation, merger); } }