private static void ProcessFacts(AncestorEntity entity) { var factService = _serviceFactory.CreateFactService(); foreach (var fact in entity.Facts) { fact.TreeId = entity.TreeId; fact.OwnerId = entity.Id; factService.Add(fact); ProcessMultimedia(fact); ProcessNotes(fact); ProcessCitations(fact, fact.Citations); } }
private void ProcessFacts(AncestorEntity entity, List <GEDCOMEventStructure> events) { foreach (var eventStructure in events) { var newFact = new Fact() { Date = eventStructure.Date, Place = (eventStructure.Place != null) ? eventStructure.Place.Data : string.Empty, OwnerId = entity.Id, OwnerType = (entity is Individual) ? EntityType.Individual : EntityType.Family }; switch (eventStructure.EventClass) { case EventClass.Individual: newFact.FactType = eventStructure.IndividualEventType; break; case EventClass.Family: newFact.FactType = eventStructure.FamilyEventType; break; case EventClass.Attribute: newFact.FactType = eventStructure.IndividualAttributeType; break; default: newFact.FactType = FactType.Unknown; break; } entity.Facts.Add(newFact); ProcessMultimedia(newFact, eventStructure.Multimedia); ProcessNotes(newFact, eventStructure.Notes); ProcessCitations(newFact, eventStructure.SourceCitations); } }