private void LoadRow(string sheetName, Dictionary <string, string> values) { ValidationIssues issues = generalDet.ValidationIssues; if (sheetName == "DET_CatchEffort") { CatchEffortDTO newDto = new CatchEffortDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.CatchEfforts.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The catch effort with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "DET_NetHaulEvent") { NetHaulEventDTO newDto = new NetHaulEventDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.NetHaulEvents.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The net haul event with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "DET_FishCount") { FishCountDTO newDto = new FishCountDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.FishCounts.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The fish count with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "DET_CatchMetric") { CatchMetricDTO newDto = new CatchMetricDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.CatchMetrics.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The catch metric with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "DET_Fish") { FishDTO newDto = new FishDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.Fish.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The fish with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "DET_IdTags") { IdTagDTO newDto = new IdTagDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.IdTags.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The ID tag with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "DET_Genetics") { GeneticDTO newDto = new GeneticDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.Genetics.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The genetic with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "DET_Diet") { DietDTO newDto = new DietDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.Diet.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The diet with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "LIST_FishSpecies") { FishSpeciesDTO newDto = new FishSpeciesDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.FishSpecies.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The fish-species with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "LIST_MacroSpecies") { MacroSpeciesDTO newDto = new MacroSpeciesDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.MacroSpecies.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The macro-species with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "LIST_Sites") { SiteDTO newDto = new SiteDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.Sites.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The site with code {0} is not unique.", newDto.LookupKey)); } } else if (sheetName == "LIST_Nets") { NetDTO newDto = new NetDTO(values); newDto.Validate(); issues.Merge(newDto.ValidationIssues); bool success = generalDet.Nets.Add(newDto); if (!success) { issues.Add(ValidationIssue.Code.NonUniqueKeyCode, string.Format("The net with code {0} is not unique.", newDto.LookupKey)); } } }