/// <summary> /// Saves an Array of directory classifications for a given directory /// </summary> /// <param name="directoryClassifications"></param> /// <param name="notChosenDirectoryClassifications"></param> /// <param name="directoryType"></param> /// <returns></returns> public bool SaveFieldTypes(List <DirectoryClassification> directoryClassifications, List <DirectoryClassification> notChosenDirectoryClassifications, DirectoryType directoryType) { var existingTypes = GetAll(); foreach (var dirClassification in notChosenDirectoryClassifications) { var x = existingTypes.FirstOrDefault(ex => ex.DirectoryTypeId == directoryType.Id && ex.DirectoryClassificationId == dirClassification.Id); if (x != null) { Delete(x); } } foreach (var dirClassification in directoryClassifications) { var x = existingTypes.FirstOrDefault(ex => ex.DirectoryTypeId == directoryType.Id && ex.DirectoryClassificationId == dirClassification.Id); if (x == null) { var dirField = new DirectoryTypeClassification() { DirectoryTypeId = directoryType.Id, DirectoryClassificationId = dirClassification.Id }; Save(dirField); } } return(true); }
/// <summary> /// Save the directory type classification /// </summary> /// <param name="obj">Directory type classification instance</param> /// <returns>True if successfull</returns> public bool Save(DirectoryTypeClassification obj) { return(repository.Save(obj)); }
/// <summary> /// Delete directory type classification /// </summary> /// <param name="obj">Type instance</param> /// <returns>True if successfull</returns> public bool Delete(DirectoryTypeClassification obj) { return(repository.Delete(obj)); }