public bool ValidateRecord(string record) { bool result = true; string[] recordFields = record.Split(','); result = isDepartmentNameValid(recordFields[0]); if (result) { result = isCrewCodeValid(recordFields[1]); } if (result) { result = isEmployeeNameValid(recordFields[2]); } if (result) { result = isStatusValid(recordFields[3]); } if (result) { result = isEmployeeNumberValid(recordFields[4]); } if (result) { result = isRoleTypeValid(recordFields[5]); } if (result) { result = isSeniorityDateValid(recordFields[6]); } if (result) { result = isSupervisorNameValid(recordFields[7], recordFields[5]); } if (result) { result = isSupervisorNumberValid(recordFields[4], recordFields[8], recordFields[5]); } if (result) { DataFileRecordModel dataFileModel = CreateDataFileRecordModel(record); if (isDuplicatedRecord(recordFields[4])) { DuplicatedRecords.Add(dataFileModel); } else { ValidRecords.Add(dataFileModel); } } else { InvalidRecords.Add(record); } return(result); }