public IEnumerable <ValidationResult> GetValidationResults() { var errors = new List <ValidationResult>(); var noGeospatialAreasSelected = GeospatialAreaIDs == null || GeospatialAreaIDs.Count().Equals(0); if (noGeospatialAreasSelected && ProjectGeospatialAreaNotes.IsNullOrWhiteSpace()) { errors.Add(new ValidationResult("Select at least one area, or if information is unavailable/irrelevant provide explanatory information in the Notes section. ")); } return(errors); }
public void UpdateModel(ProjectUpdateBatch project, List <ProjectGeospatialAreaUpdate> currentProjectGeospatialAreas, IList <ProjectGeospatialAreaUpdate> allProjectGeospatialAreas) { var newProjectGeospatialAreas = GeospatialAreaIDs?.Select(x => new ProjectGeospatialAreaUpdate(project.ProjectUpdateBatchID, x)).ToList() ?? new List <ProjectGeospatialAreaUpdate>(); currentProjectGeospatialAreas.Merge(newProjectGeospatialAreas, allProjectGeospatialAreas, (x, y) => x.ProjectUpdateBatchID == y.ProjectUpdateBatchID && x.GeospatialAreaID == y.GeospatialAreaID, HttpRequestStorage.DatabaseEntities); }